티스토리 뷰
반응형
객체, 데이터들을 효율적으로 관리 할 수 있는 자료구조들이 있는 라이브러리를 컬렉션(Collection) 프레임워크라고 한다
https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html
java Collection API 문서를 보면 Collection의 상속 관계를 알 수 있다.
List, Set, Queue은 Collection 인터페이스을 상속받지만, Map 인터페이스는 구조상(key,value)의 차이가 있어 별도로 정의한다.
요약
구조를 한 눈에 정리하자면 아래와 같다.
인터페이스 | 순서 | 중복가능 | 구현클래스 | |
Collection | List | O | O | ArrayList, Stack, Vector, LinkedList |
Queue | O | O | DelayQueue, PriorityQueue, LinkedList | |
Set | X | X | HashSet, TreeSet, EnumSet | |
Map | O/X | X(키) | LinkedHashMap,HashMap,TreeMap |
List
ArrayList | LinkedList | Vector | Stack | |
특징 | 인덱스 순서로 저장되며 중복 요소를 포함할 수 있다. | |||
- resizable Array - 비동기식 - 배열을 이용한 요소저장 |
- Doubly-linked list - 비동기식 - 연결 리스트를 이용한 요소 저장 |
- ArrayList 클래스와 같은 동작 - 현재는 거의 사용X |
- LIFO - 선형 메모리 공간에 데이터 저장 |
Queue
Queue는 리스트와 유사한 특성을 갖고있지만, FIFO(First In First Out, 선입선출)인 특성을 갖고있다/
자바에서 큐는 LinkedList를 활용하여 생성해야한다. 그렇기에 Queue와 LinkedList가 다 import되어 있어야 사용이 가능하다.
Queue< E > q = new LinkedList< E >();
Set
HashSet | TreeSet | LinkedHashSet | |
특징 | 중복된 값은 저장하지 않는다 | ||
- 순서에 상관없이 요소 저장 - 해시 알고리즘 사용하여 검색속도가 빠름 |
- 오름차순 정렬 Default | - 입력한 순서 - JDK 1.4부터 제공 |
Map
HashMap | TreeMap | LinkedHashMap | |
출력 | 순서 보장X | Key 기준 정렬 | 입력한 순서 |
시간 복잡도 | O(1) | O(log N) | O(1) |
반응형
'Language > java' 카테고리의 다른 글
람다식 안에서 지역변수 사용하기 (0) | 2021.06.22 |
---|---|
컬렉션(Collection) sorted() (0) | 2021.05.26 |
[OCPJP]Java SE 8 Programmer II Certification Exam | 1Z0-809 덤프/DUMP 문제#81~93 (0) | 2021.03.01 |
[OCPJP]Java SE 8 Programmer II Certification Exam | 1Z0-809 덤프/DUMP 문제#61~80 (0) | 2021.03.01 |
[OCPJP]Java SE 8 Programmer II Certification Exam | 1Z0-809 덤프/DUMP 문제#41~60 (0) | 2021.03.01 |
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
TAG
- c#
- 캐시삭제
- C# java 차이점
- html
- 퇴사
- 런타임에러
- 선언적트랜잭션 #noRollbackFor #@Transactional
- C++
- boj
- script버전
- 백준14501
- html꿀팁
- 개발중캐시삭제
- 프론트엔드개발자
- 백준퇴사
- 프론트엔드
- 백준
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 | 29 |
30 | 31 |
글 보관함