nickjoIT
컬렉션 프레임워크란 무엇인가 본문
1. 정의
- 데이터 군을 저장하는 클래스들을 표준화한 설계를 뜻 한다.
- 컬렉션은 다수의 데이터, 즉 데이터 그룹을, 프레임웍은 표준화된 프로그래밍 방식을 의미한다.
- 다른 말로는 컨테이너라고 부르는데, 이것은 값을 담는 그릇이라는 의미 이다.
- 담는 값의 성격에 따라 컨테이너의 성격이 조금씩 달라지는데, 자바는 다양한 상황에서 사용할 수 있는 다양한 컨테이너를 제공하며, 이것을 컬렉션 프레임워크라고 부른다.
- JDK1.2 이전까지는 Vector, Hashtable, Properties와 같은 컬렉션 클래스들을 서로 다른 각자의 방식으로 처리해야 했으나,
JDK1.2 부터 컬렉션 프레임웍이 등장하면서 다양한 종류의 컬렉션 클래스가 추가되고 모든 컬렉션 클래스를 표준화된 방식으로 다룰 수 있도록 체계화되었다.
인터페이스 | 특 징 |
List | 순서가 있는 데이터의 집합, 데이터의 중복을 허용한다. --> 데이터를 add하면 앞에서 부터 순차적(순서대로)으로 데이터가 들어간다. 그래서 각각의 저장되어 있는 공간들은 고유한 index를 갖는다. ex.) 대기자 명단 |
구현 클래스: ArrayList, LinkedList, Stack, Vector등
| |
Set | 순서를 유지하지 않는 데이터의 집합, 데이터의 중복을 허용하지 않는다. --> 집합이다. 데이터가 순서와는 상관없이 add된다. 중복되지 않는다. ex.) 양의 정수 집합, 소수의 집합 |
구현 클래스: HashSet, TreeSet등 | |
Map | 키와 값의 쌍으로 이루어진 데이터의 집합. 순서는 유지되지 않으며, 키는 중복을 허용하지 않고, 값을 중복을 허용한다. ex.) 우편번호, 지역번호 |
구현 클래스: HashMap, TreeMap, Hashtable, Properties등 |
[참고사이트]
http://devbox.tistory.com/entry/Java-%EC%BB%AC%EB%A0%89%EC%85%98-%ED%94%84%EB%A0%88%EC%9E%84%EC%9B%8C%ED%81%AC
'PROGRAMING > JAVA' 카테고리의 다른 글
람다식 (0) | 2016.03.09 |
---|---|
지네릭스(Generics) (0) | 2016.03.08 |
String과 StringBuffer의 차이점 (0) | 2016.02.18 |
스레드와 프로세스의 차이점 (0) | 2016.02.12 |
일반예외 && 실행예외 (0) | 2016.02.06 |