컬렉션 프레임워크의 핵심 인터페이스
1.List : 순서가 있는 데이터 집합. 데이터 중복 허용
구현 클래스 - ArrayList, LinkedList, Stack, Vector 등
2.Set : 순서가 없는 데이터 집합. 데이터 중복 허용하지않는다.
구현 클래스 - HashSet, TreeSet 등
3.Map : 키(key)와 값(value)의 쌍으로 이루어진 데이터 집합. 순서가 없고, 키의 중복은 허용하지않으며, 값의 중복은 허용한다.
구현 클래스 - HashMap, TreeMap 등
List와 Set의 공통부분을 뽑아 새로운 인터페이스 Collection을 추가로 정의했다.

구현클래스의 특징
List
1.ArrayList : 배열 기반. 데이터의 추가 삭제의 성능이 좋지않다. 임의의 요소에 대한 접근성이 뛰어나다.
2.LinkedList : 연결기반. 데이터의 추가와 삭제에 성능이 좋다. 접근성(탐색)이 좋지않다.
3.Stack : LIFO(Last In First Out) 후입 선출의 특성을 가진다.
4.Queue : LinkedList기반으로 만들어 졌으며 FIFO(First In First Out)의 특성을 가진다.
Set
1.HashSet : HashMap을 이용해서 구현했으며 해싱기법에 의해 데이터가 저장된다.
2.TreeSet : TreeMap을 이용해서 구현했으며 이진
Map
1.HashMap : 배열과 연결(LinkedList)의 결합된 형태이다. 데이터의 추가, 삭제, 검색 등 모두 띄어나다.
2.TreeMap : 연결(LinkedList)기반으로 만들어졌다. 정렬과 탐색에 적합하다. 기본적으로 데이터들의 key들이 오름차순으로 정렬된다.
'Programming > JAVA' 카테고리의 다른 글
열거형(Enums) (0) | 2021.08.10 |
---|---|
지네릭스(Generics) (0) | 2021.08.07 |
Map (0) | 2021.08.07 |
HashSet & TreeSet (0) | 2021.08.03 |
Arrays & Comparator (0) | 2021.08.02 |