Collection 객체는 언제 ?
Last updated
Last updated
set
중복이 없는 집합 객체을 만들때
HashSet : 순서 없이 저장
TreeSet : red-black이라는 트리에 데이터 담음
값에 따라서 순서가 정해짐
저장 되면서 동시에 정렬하기 때문에 HashSet 보다 성능 느림
LinkedHashSet : 저장된 순서에 따라서 순서 결정
list
Vector : 크기를 지정할 필요가 없는 배열 클래스
ArrayList : Vector 와 비슷하지만 동기화 처리가 되지 않음
LinkedList : ArrayList 와 비슷하지만 Queue 인터페이스를 구현했기 때문 FIFO 큐 작업 수행
참고 : https://www.edureka.co/blog/java-collections/
map
Hashtable : 내부에서 관리하는 해쉬테이블 객체가 동기화 되어 있으므로 동기화 필요한 부분에서 사용
HashMap : null값 허용되고 동기화 되지 않음
ThreeMap : red-black이라는 트리에 데이터 담음
ThreeSet과 다른점은 Key에 의해서 순서가 정해짐
LinkedHashMap : HashMap 과 동일 하며 이중 연결 리스트 방식을 사용하여 저장
Set 계열 : 데이터를 순서에 따라 탐색하는 작업은 TreeSet 사용이 좋으며 그럴 필요가 없을 때는 HashSet , LinkedHashSet 을 사용 한다.
List 계열 : 데이터의 삭제 작업이 있으면 LinkedList를 사용하고 없으면 Vector or ArrayList 사용
Map 계열 : ThreeMap 이 가장 느림
Set 계열 : HashSet
List 계열 : ArrayList
Map 계열 : HashMap
Queue 계열 : LinkedList