Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- xml
- Java
- Multipart
- java annotation
- 자바스크립트
- 데이터베이스
- 반응형웹
- 웹프로그래밍
- Request/Response Header
- java컴파일
- 데이터문서포맷
- XML DOM
- 자바
- 프로그래밍용어
- Servlet
- Database
- JSTL
- 데이터포맷
- JavaScript
- HTTP
- 공문서작성규정
- Ajax
- XML Core
- xml mapping
- 세션
- Session
- JSP
- 스프링프레임워크
- 데이터규정
- 카카오APi
Archives
- Today
- Total
KyungHwan's etc.
자바 컬렉션 프레임워크(Collection framework) 본문
자바에서 컬렉션 프레임워크란 다수의 데이터를 쉽고 효과적으로 처리할 수 있는 표준화된 방법을 제공 하는 클래스의 집합을 의미한다.
즉, 데이터를 저장하는 자료 구조와 데이터를 처리하는 알고리즘을 구조화하여 클래스로 구현해 놓은 것이다.
컬렉션 프레임워크 주요 인터페이스
컬렉션 프레임워크에서는 데이터를 저장하는 자료 구조에 따라 다음과 같은 핵심이 되는 주요 인터페이스를 정의하고 있다.
List 인터페이스
Set 인터페이스
Map 인터페이스
이 중에서 List와 Set 인터페이스는 모두 Collection 인터페이스를 상속받지만, 구조상의 차이로 인해 Map 인터페이스는 별도로 정의된다.
따라서 List 인터페이스와 Set 인터페이스의 공통된 부분을 Collection 인터페이스에서 정의하고 있다.
위의 그림에서 <E>나 <K, V>라는 것은 컬렉션 프레임워크를 구성하는 모든 클래스가 제네릭으로 표현되어 있음을 알려준다.
주요 인터페이스의 간략한 특징
인터페이스 | 설명 | 구현 클래스 |
---|---|---|
List<E> | 순서가 있는 데이터의 집합으로, 데이터의 중복을 허용함. | Vector, ArrayList, LinkedList, Stack, Queue |
Set<E> | 순서가 없는 데이터의 집합으로, 데이터의 중복을 허용하지 않음. | HashSet, TreeSet |
Map<K, V> | 키와 값의 한 쌍으로 이루어지는 데이터의 집합으로, 순서가 없음.이때 키는 중복을 허용하지 않지만, 값은 중복될 수 있음. | HashMap, TreeMap, Hashtable, Properties |
Collection 인터페이스
List와 Set 인터페이스의 많은 공통된 부분을 Collection 인터페이스에서 정의하고, 두 인터페이스는 그것을 상속받는다.
따라서 Collection 인터페이스는 컬렉션을 다루는데 가장 기본적인 동작들을 정의하고, 그것을 메소드로 제공하고 있다.
boolean add(E e) | 해당 컬렉션(collection)에 전달된 요소를 추가함. (선택적 기능) |
---|---|
void clear() | 해당 컬렉션의 모든 요소를 제거함. (선택적 기능) |
boolean contains(Object o) | 해당 컬렉션이 전달된 객체를 포함하고 있는지를 확인함. |
boolean equals(Object o) | 해당 컬렉션과 전달된 객체가 같은지를 확인함. |
boolean isEmpty() | 해당 컬렉션이 비어있는지를 확인함. |
Iterator<E> iterator() | 해당 컬렉션의 반복자(iterator)를 반환함. |
boolean remove(Object o) | 해당 컬렉션에서 전달된 객체를 제거함. (선택적 기능) |
int size() | 해당 컬렉션의 요소의 총 개수를 반환함. |
Object[] toArray() | 해당 컬렉션의 모든 요소를 Object 타입의 배열로 반환함. |
Refernce
http://tcpschool.com/java/
'Java' 카테고리의 다른 글
자바 Map 컬렉션 클래스 (0) | 2018.06.21 |
---|---|
자바 List 컬렉션 클래스 (ArrayList) (0) | 2018.06.20 |
자바 제네릭(generic) (0) | 2018.06.20 |
자바 입출력( I / O) 과 스트림(Stream) (0) | 2018.06.20 |
자바(JAVA) 공백 문자열 제거 (0) | 2018.06.12 |
Comments