12.1 Collection 개념
12.1.1 콜렉션 프레임워크란
•
다수의 데이터를 다루기 위한 자료구조를 표현하고 사용하는 클래스의 집합이다.
•
데이터를 다루는데 필요한 풍부하고 다양한 클래스와 기본함수를 제공하기 때문에 많이 유용하다. 실제 자바 어플리케이션을 개발할 때 숨 쉬듯이 가장 많이 사용하는 클래스.
•
콜렉션 프레임워크의 모든 클래스는 Collection interface를 구현(implement)하는 클래스 또는 인터페이스.
12.1.2 대표 콜렉션 인터페이스와 자료구조
Collection 은 모든 자료구조가 구현(implement)하는 인터페이스이다. 아래 배우는 모든 자료구조에 해당하는 클래스, 인터페이스는 언제나 Collection 인터페이스를 구현하고 있습니다.
1.
List : 순서가 있는 데이터의 집합이며 데이터의 중복을 허용합니다.
→ ArrayList, LinkedList, Stack 등
2.
Set : 순서를 유지하지 않는 데이터의 집합이며 데이터의 중복을 허용하지 않는다.
→ HashSet, TreeSet 등
3.
Map : 키(key)와 값(value)의 쌍으로 이루어진 데이터의 집합. 순서는 유지되지 않으며 키는 중복을 허용하지 않고 값은 중복을 허용한다.
→ HashMap, TreeMap 등
4.
Stack : 마지막에 넣은 데이터를 먼저 꺼내는 자료구조. LIFO(Last In First Out)
→ Stack, ArrayDeque 등
5.
Queue : 먼저 넣은 데이터를 먼저 꺼내는 자료구조. FIFO(First In First Out)
→ Queue, ArrayDeque 등
•
콜렉션 인터페이스에는 콜렉션 클래스에 저장된 데이터를 읽고, 추가하고 삭제하는 등 데이터를 다루는데 기본적인 메소드들을 정의하고 있다.