컬렉션 프레임웍이란 데이터 군을 저장하는 클래스들을 표준화한 설계를 뜻합니다.

List, Set, Map. 이 세가지가 핵심인데, List, Set의 공통부분을 모아 Collection이라는 인터페이스를 정의했습니다.

객체지향을 이해하고, 설계능력을 제고시켜주는 이 세가지의 특징을 살펴보겠습니다.

 

인터페이스 특징
List 순서가 있는 데이터의 집합. 데이터의 중복을 허용합니다.
구현클래스 : ArrayList, LinkedList, Stack, Vector 등
Set 순서를 유지하지 않는 데이터의 집합, 데이터의 중복을 허용하지 않습니다.
구현클래스 : HashSet, TreeSet 등
Map 키(key)와 값(value)의 쌍으로 이루어진 데이터의 집합, 순서는 유지되지 않으며, 키는 중복을 허용하지 않고, 값은 중복을 허용합니다
구현클래스 : HastMap, TreeMap, Hashtable, Properties 등

위의 클래스 중 컬렉션 프레임웍이 만들이지기 이전부터 존재하던 것들은 컬렉션 프레임웍의 명명법을 따르지 않습니다. 그러므로 새로 추가된 ArrayList와 HashMap을 사용하는게 좋습니다.

 

 

각 인터페이스의 주요 메서드 간략하게 정리해보겠습니다.

 

1. List

메서드 설명
void add(int index, Object element),
boolean addAll(int index, Collection)
인덱스에 객체, 또는 컬렉션에 포함된 객체를 추가
Object get(int index) 인덱스의 값을 반환
int indexOf(Object o) 인덱스번호를 반환
int lastIndexOf(Object o) 역순으로 인덱스번호를 반환
ListIterator listIterator()
ListIterator listIterator(int index)
ListIterator를 반환
Object remove(int index) 지정된 객체를 삭제
Object set(int index, Object element) 인덱스값의 객체를 저장
void sort(Comparatorc) 비교자로 정렬
List subList(int fromIndex, int toIndex) 지정된 범위의 객체를 반환

 

2. Set

 

메소드 설명
boolean add(E e) 해당 집합(set)에 전달된 요소를 추가(선택적 기능)
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 타입의 배열로 반환

 

3. Map

 

메서드 설명
void clear() Map의 모든 객체를 삭제
boolean containsKey(Object key) 지정된 객체와 일치하는 map의 객체가 있는지 확인
boolean containsKey(Object value) 지정된 객체와 일치하는 map의 객체가 있는지 확인
Set entrySet() map에 저장되어있는 한 쌍을 Map.Entry타입의 객체로 반환
boolean equals(Object o) 동일한 map인지 비교
Object get(Object key) key 객체의 valye값 반환
int hashCode() 해시코드 반환
boolean isEmpty() 비어있는지 확인
Set keySet() 모든 key 반환
Object put(Object key, Object value) key, value 추가
void putAll(Map t) 지정된 key 객체와 일치하는 쌍을 추가
Object remove(Object key) key의 해당하는 key, value값 삭제
int size() map에 저장된 크기 반환
Collection values() map에 저장된 모든 value객체 반환

 

 

출처 : 자바의 정석

  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 카카오스토리 공유하기