[기초] 시리즈는 본강의를 수강후 정리한 글들 입니다.
💡Map 인터페이스
- 대표적인 특성 : 요소를 저장하기 위해서는 유일한 키 key 와 함께 저장해야 함.
- List, Set, Queue와 달리 Map 인터페이스는 Collection 인터페이스를 상속하지 않음.
- => 저장 요소가 다름 (키 : 밸류)
- Map 인터페이스는 내부에 Entry 인터페이스를 가지고 있으며 Entry는 키와 값을 가진 객체의 순서 쌍.
- Map 인터페이스의 주요 구현 클래스는 HashMap, LinkedHashMap, TreeMap 등이 있음.
- HashMap
- HashMap에 요소를 저장하기 위해서는 키 key 와 값 value 이 필요하며 값의 경우 중복이 가능.
- => 키는 유니크해야 하므로 달라야 함!
- HashMap 클래스는 저장되는 요소의 순서를 보장하지 않음.
- LinkedHashMap
- LinkedHashMap 클래스는 요소를 추가한 순서를 보장함.
- TreeMap
- TreeMap 클래스는 요소의 키에 대한 정렬된 순서를 보장하며 이를 위해 키 객체가 Comparable 인터페이스를 구현하고 있어야 함.
- => 키를 기준으로 정렬.
- => 정렬 기준을 정해주어야 하고 comparable 인터페이스를 구현하는 형태로 해야함.
- TreeMap 클래스는 요소의 키에 대한 정렬된 순서를 보장하며 이를 위해 키 객체가 Comparable 인터페이스를 구현하고 있어야 함.
- HashMap
💡iterator 인터페이스
- iterator 인터페이스는 컬렉션 객체가 가지고 있는 요소들을 순회할 수 있는 기능들을 명세한 인터페이스
- =>Collection 프레임워크의 클래스들이 전체 요소들을 모두 꺼내고자 할때 활용할 수 있는 방법
- Collection 인터페이스를 구현한 클래스(List, Set, Queue)들은 iterator() 메소드를 통해 iterator 구현 객체를 반환
- => 전체 요소의 바로 이전 = iterator / hasNext() -> next() -> hasNext() -> ..반복
- Map 구현 클래스의 경우 Map.values() 메소드를 통해 값(요소)들을 Collection 타입으로 객체를 반환받은 이후에 다시 iterator 구현 객체를 이용하여 순회 가능
- 🚩Stream과 Lamda를 알면 사용할 일 없음..
'☕JAVA > 🐣 강의 [JAVA]' 카테고리의 다른 글
[JAVA][기초] 람다식 / 함수형 인터페이스 (0) | 2022.11.15 |
---|---|
[JAVA][기초] 함수형 프로그래밍 / 중첩클래스 (0) | 2022.11.12 |
[JAVA][기초] Collection 인터페이스 - List / Set 인터페이스 (0) | 2022.11.10 |
[JAVA][기초] Java Collection Framework 와 Generic 제네릭의 이해 (0) | 2022.11.10 |
[JAVA][기초] 예외처리 (0) | 2022.11.09 |