Java Collection
https://gangnam-americano.tistory.com/41
Java의 Collection은 데이터의 집합, 그룹 이란 뜻
JCF(Java Collection Framework)에서 인터페이스를 제공
Collection
List : 순서 O, 데이터 중복 O
Queue : FIFO (First in first out)
LinkedList : 양방향 포인터 구조. 데이터 삽입, 삭제가 빈번할 경우에 유용(데이터 위치 정보만 수정하면 됨)
PriorityQueue
Stack : LIFO(Last In First Out)
Vector : 동기화 보장. 데이터 대용량 처리에 효과적, 자동 동기화 처리로 인한 성능 저하로 잘 안쓰게됨
ArrayList : 동기화 보장하지 않음. 단방향 포인터 구조. 각 데이터에 대한 인덱스 소지를 통해 조회 기능이 월등함
Set : 순서 X, 데이터 중복 X.
HashSet : Set 계열 대표클래스. 가장 빠른 임의 접근 속도, 순서 예측 불가능
SortedSet : 정렬을 위한 Set 계열 클래스
TreeSet : 정렬 방법을 지정할 수 있음
Map : 키(Key),값(Value)의 쌍으로 이루어진 데이터의 집합. 순서 X, 키 중복 X, 값 중복 O
Hashtable : 동기화 보장. HashMap보다는 느림. null 불가
HashMap : 동기화 보장하지 않음. 중복/순서 비허용. null 값 가능
SortedMap : 정렬을 위한 Map계열클래스
TreeMap : 정렬된 순서대로 key/value를 저장하므로 검색이 빠름
덱을 이용해 스택과 큐를 만든다.