일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 | 31 |
- tag html
- i 태그
- reveal in file explorer
- 임베디드
- 인접 형제 결합자
- iframe
- iframe 태그
- Checked 의사 클래스
- width속성
- html
- 아두이노
- br 태그
- html tag i
- css
- height속성
- 일반 형제 결합자
- sub태그
- 전체 선택자
- Live Server
- not 의사클래스
- 자식결합자
- id 선택자
- background-color 속성
- sup태그
- RGB
- html 태그
- RGBA
- padding 속성
- go live
- focus 의사클래스
- Today
- Total
so woon!
[공통] 자료구조 본문
학습일 : 2022. 10. 18
자료구조
자료구조(Data Structure)는 자바에서 데이터를 보다 쉽게 이용할 수 있게 하기 위해 만들어졌다.
자료구조의 구조
Collection(java.util.Collection\<E\>)
List(java.util.List\<E\>)
비정적 메서드
add(E e) : E타입의 객체 e를 List에 추가한다. (현재 리스트(배열)의 크기는 자동으로 늘어난다.) clear() : List가 가진 원소를 모두 제거한다. contains(E e) : 원소 중 전달 받은 e객체와 동일한( equals ) 객체를 가지고 있는지의 여부를 반환한다. get(int i) : i번째 객체를 반환한다. indexOf(E e) : List가 가진 원소 중 전달된 매개 변수 e와 equals인 원소의 인덱스 순번(인덱스)을 반환한다. 없다면, -1을 반환한다. remove(int i) : i번째 객체를 List에서 제거한다. (삭제 후 리스트(배열)의 크기는 자동으로 줄어든다.) remove(E e) : List에서 전달 받은 e객체에 대해 equals(...) 호출 결과가 true인 원소를 제거한다. (삭제 후 리스트(배열)의 크기는 자동으로 줄어든다.) size() : 원소의 개수를 반환한다. |
ArrayList(java.util.ArrayList\<E\>)
`ArrayList`는 E타입의 객체를 그 원소로 가진다. (일반 배열 처럼) 순번 (인덱스 번호) 으로 데이터에 접근한다. 일반 배열과 달리 데이터 조회, 추가 및 삭제가 용이해 많이 사용한다. 데이터 조회(접근)는 다른 List보다 빠르지만, 데이터 추가 및 삭제는 느린편이다. |
ArrayList<String> names = new ArrayList<>();
names.add("김김김");
ArrayList<Boolean> nums2 = new ArrayList<>();
ArrayList<Integer>
ArrayList<Boolean>
==> <>안에는 참조타입이 들어가야 한다.
Map(java.util.Map<K, V>)
(Map은 자바스크립트의 오브젝트와 비슷)
비정적 메서드
- clear() : 가지고 있는 모든 키-값-쌍을 제거한다.
- containsKey(K k) : 원소 중 전달된 K 타입의 객체 k를 키로 가지는 원소가 있는가의 여부를 반환한다.
- containsValue(V v) : 원소중 전달된 V 타입의 객체 v를 갑승로 가지는 원소가 있는가의 여부를 반환한다.
- get(K k) : K타입의 키 객체 k를 키로 가지는 원소의 V타입 값 객체를 반환한다.
- keySet() : 가지고 있는 모든 키-값 쌍의 키(들)에 대한 Set<K> 객체를 반환한다.
- put(K k, V v) : K타입의 키 객체 k에 대한 V타입의 값 객체 v의 쌍을 추가한다.
- remove(K k) : 원소인 키-값쌍 중 키가 K타입의 k객체와 같은(hashCode() 로 판단) 원소를 제거한다.
- size() : 가지고 있는 모든 키-값 쌍의 개수를 반환한다. 단, 키와 값 쌍 하나를 한개로 판단하므로 유의한다.
- values() : 가지고 있는 모든 키-값 쌍의 값(들)에 대한 Collection<V> 객체를 반환한다.
HashMap (java.util.HashMap<K, V>)
- HashMap<K, V> 는 K타입의 객체인 키(Key)와, V타입의 객체인 값(Value)의 쌍을 원소로 가진다.
- 각 '키-값 쌍'은 인덱스 번호로 접근할 수 없다.
- 어떠한 값에 접근하기 위해서는 키가 필요하다.
- hashCode() 호출 결과가 동일한 같은 타입의 객체를 키로 가지는 원소가 여러개 존재할 수 없다.
import java.util.HashMap;
public class Main {
public static void main(String[] args) throws Throwable {
HashMap<String, Integer> scores = new HashMap<>(); // HashMap 객체화 key는 String, value는 Integer
scores.put("김김김", 87); // ctrl+p 누르면 뭐 적어야되는지 알려줌
scores.put("이이이", 100);
scores.put("박박박", 105);
/*자바스크립트의 object의 경우
let scores = {
김김김 : 87,
이이이 : 100,
박박박 : 105
}
*/
int scoreOfPark = scores.get("박박박"); // 105
System.out.println("박박박 : " + scoreOfPark);
}
}
import java.util.HashMap;
public class Main {
public static void main(String[] args) throws Throwable {
HashMap<String, Integer> scores = new HashMap<>(); // HashMap 객체화 key는 String, value는 Integer
scores.put("김김김", 87); // ctrl+p 누르면 뭐 적어야되는지 알려줌
scores.put("이이이", 100);
scores.put("박박박", 105);
/*자바스크립트의 object의 경우
let scores = {
김김김 : 87,
이이이 : 100,
박박박 : 105
}
*/
System.out.println(scores.get("박박박"));
scores.remove("박박박");
System.out.println(scores.get("박박박"));
'Java > 개념정리' 카테고리의 다른 글
[기타] 자주 사용하는 의존성 (0) | 2022.10.20 |
---|---|
[공통] 메이븐 (0) | 2022.10.20 |
[공통] 인터페이스 (0) | 2022.10.18 |
[클래스] Math (0) | 2022.10.18 |
[클래스] String (0) | 2022.10.18 |