💡JCF, Java Collection Framework
컬렉션은 자료구조이자 무언가를 모아놓은 집합(배열)이며, 기존의 배열에서 향상된 배열을 의미한다.
기존의 순수 배열에서 사용법을 개량하거나 용도에 따른 입출력 방식 또는 효율성을 높였다는 특징이 있으며, 어떤 분야에서 배열을 특화시켰느냐에 따라 종류가 굉장히 많다.
또한 컬렉션은 클래스와 내부 순수 배열을 가지고 있으며, 길이가 가변적이어서 방의 개수를 마음대로 늘이고 줄이는게 가능하다는 장점이 있다.
컬렉션을 읽는 방법
- Array + List
- Linked + List
- Hash + Map
- Tree + Map
- Hash + Set
- Tree + Set
앞에 단어는 물리 구조(메모리의 모양)를 나타내고, 뒤에 단어는 인터페이스(사용법)을 나타낸다.
💡컬렉션의 종류
컬렉션에는 크게 3가지 계열이 있으며, 각각의 List, Set, Map은 인터페이스를 의미한다.
이때 legacy는 너무 오래되었거나 대체할 수 있는 기능이 생겨서 지금은 잘 사용하지 않는 기능이다.
- List: ArrayList, LinkedList, Queue, Stack, Vector (legacy)
- Set: HashSet, TreeSet
- Map: HashMap, TreeMap, Properties (legacy), HashTable (legacy)
1. List Interface
- ArrayList
- LinkedList
- Queue
- Stack
- Vector (legacy)
2. Set Interface
- HashSet
- TreeSet
3. Map Interface
- HashMap
- TreeMap