반응형
Collection Framework?
- 대량의 데이터를 쉽고 효과적으로 처리할 수 있게 표준화된 방법을 제공하는 클래스의 집합이다.
- 한마디로, 데이터를 저장하는 자료구조 + 데이터를 처리하는 알고리즘을 구조화하여 클래스로 구현했다!!
- Java의 기능을 나타내기 위한 클래스, 각각의 Interface를 상속하여 구현이 되어있다
- 모든 클래스가 <E> 처럼 제네릭으로 표현되어 있다!!
제네릭이란?
- Generic : 데이터의 타입(data type)을 일반화(generalize)한다.
- 클래스나 메소드에서 사용할 내부 데이터 타입을 컴파일시에 미리 지정하는 방법이다.
그러면 결과적으로 다음과 같은 장점을 얻을 수 있다!
○ Class Method 내부에서 사용되는 객체의 타입 안정성을 높일 수 있다.
○ 변환값에 대한 타입 변환 및 타입 검사에 들어가는 노력을 줄일 수 있다.
사용할 때 주의할 점!!!
* 기본형 Type의 자료형은 사용할 수 없다. ( int, double, char .... )
* Wrapper Class를 사용하거나 Class를 선언하여 사용해야 한다! ( Integer, Double, Character, String ... )
주요 인터페이스 특징
인터페이스 | 설명 | 구현클래스 | ||
List<E> | 순서가 있는 집합으로, 데이터의 중복을 허용한다 | Vector, ArrayList, LinkedList, Stack, Queue | ||
Set<E> | 순서가 없는 집합으로, 데이터의 중복을 허용하지 않는다 | HashSet, TreeSet | ||
Map<K,V> |
키와 값의 한쌍으로 이루어지는 데이터의 집합 키는 중복을 허용하지 않지만, 값은 허용한다 |
HashMap, TreeMap, Hashtable |
참고
컬렉션 프레임워크의 개념
제네릭의 개념
Oracle Collection Framework
반응형
'Developer > Data Structure' 카테고리의 다른 글
Doubly Linked List - 이중 연결 리스트 (0) | 2019.11.10 |
---|---|
자료구조 - HashTable(해쉬테이블), 해싱 (0) | 2019.04.30 |
[ Collection Framework ] - 3. Priority Queue(우선순위큐) (2) | 2019.03.31 |
[ Collection Framework ] - 2. ArrayList(배열) (0) | 2019.03.31 |