List
- 입력 순서를 유지하며, 데이터의 중복을 허용
- 인덱스를 통해 저장 데이터에 접근이 가능
주요 구현체
Set
- 입력 순서를 유지하지 않으며, 데이터의 중복 허용하지 않음
- 데이터에 null 입력 가능하나, 한 번만 저장하고 중복 저장을 허용하지 않음
- 인덱스가 따로 존재하지 않기 때문에 iterator를 사용하여 조회
주요 구현체
- HashSet
- LinkedHashSet
- TreeSet
Map
- Key & Value의 구조
- Key는 입력 순서를 유지하지 않으며, 중복을 허용하지 않음
- Value는 중복을 허용함
주요 구현체
- HashMap
- LinkedHashMap
- TreeMap
HashMap
- Key에 대한 입력 순서를 보장하지 않으며, 중복을 허용하지 않음
- HashTable과 사용방법이 유사하다.(차이점은 HashMap은 Thread-safe하지 않은 대신 속도가 빠르다.)
❓ 해싱(Hashing)이란?
Key를 해시 함수(Hash Function)에 대입해 나온 결과를 주소로 사용하여 바로 Value에 접근할 수 있도록 하는 방법이다.
Reference
[간단정리] List, Set, Map 특징 및 차이점(+ 구현체 )
[COLLECTION] 이것만 알면 해시맵(HASHMAP) 정복 가능 - HASHMAP의 특징, 사용법 예제
해싱(Hashing)