본문 바로가기

프로그래밍/Java

Java_컬렉션 프레임웍(1)

① 컬렉션 프레임웍 (Collection Framework)

  • 컬렉션 : 여러 객체를 모아놓은 것.
  • 프레임웍 : 표준화된 체계적인 프로그래밍 방식.
  • 컬렉션 프레임웍 : 컬렉션을 다루기 위한 표준화된 프로그래밍 방식.

→ 컬렉션을 쉽고 편리하게 다룰 수 있는 다양한 클래스를 제공한다.

 

 

- 컬렉션 프레임웍의 핵심 인터페이스 

  • List : 순서O, 중복O 
  • Set : 순서X, 중복X
  • Map : 순서X, 중복 - 키X, 값O 

 

 

- Collection 인터페이스 

메서드 설명
boolean add(Object o)
boolean addAll(Collection c)
지정된 객체(o) 또는 Collection(c)의 객체들을 Collection에
추가한다.
void clear() Collection의 모든 객체를 삭제한다.
boolean contains(Object o)
boolean containsAll(Collection c)
지정된 객체(o) 또는 Collection(c)의 객체들이 Collection에
포함되어 있는지 확인한다.
boolean equals(Object o) 동일한 Collection인지 비교한다.
int hashCode() Collection의 hash code를 반환한다.
boolean isEmpty() Collection이 비어있는지 확인한다.
Iterator iterator() Collection의 Iterator를 얻어서 반환한다.
boolean remove(Object o)
boolean removeAll(Collection c)
지정된 객체(o) 또는 Collection(c)의 객체들을 Collection에
삭제한다.
boolean retainAll(Collection c) 지정된 Collection에 포함된 객체만을 남기고 다른 객체들은 Collection에서 삭제한다. 이 작업으로 인해 Collection에 변화가 있으면 true, 그렇지 않으면 false를 반환한다.
int size() Collection에 저장된 객체의 개수를 반환한다.
Object[] toArray() Collection에 저장된 객체를 객체배열(Object[])로 반환한다.
Object[] toArray(Object[] a) 지정된 배열에 Collection의 객체를 저장해서 반환한다.

 

 

- List인터페이스 : 순서O, 중복O

메서드 설명
void add(int index, Object element)
boolean addAll(int index, Collection c)
지정된 위치(index)에 객체(element) 또는 컬렉션에 포함된 
객체들을 추가한다.
Object get(int index) 지정된 위치(index)에 있는 객체를 반환한다.
int indexOf(Object o) 지정된 객체의 위치(index)를 반환한다.
int lastIndexOf(Object o) 지정된 객체의 위치(index)를 반환한다.
(List의 마지막 요소부터 역방향으로 찾음.)
ListIterator listIterator()
ListIterator listIterator(int index)
List의 객체에 접근할 수 있는 ListIterator를 반환한다.
Object remove(int index) 지정된 위치(index)에 객체를 삭제하고 삭제된 객체를 반환한다.
Object set(int index, Object element) 지정된 위치(index)에 객체(element)를 저장한다.
void sort(Comparator c) 지정된 비교자(comparator)로 List를 정렬한다.
List subList(int fromIndex, int toIndex) 지정된 범위(fromIndex부터 toIndex)에 있는 객체를 반환한다.

 

 

- Set인터페이스 : 순서X, 중복X

Set인터페이스의 메서드는 모두 Collection인터페이스로부터 상속받은 것들이다.

 

 

- Map인터페이스 : 순서X, 중복 - 키X, 값O

메서드 설명
void clear() Map의 모든 객체를 삭제한다.
boolean containsKey(Object key) 지정된 key객체와 일치하는 Map의 key객체가 있는지 확인한다.
boolean containsValue(Object value) 지정된 value객체와 일치하는 Map의 value객체가 있는지 확인한다.
Set entrySet() Map에 저장되어 있는 key-value쌍을 Map.Entry타입의 객체로 저장한 Set으로 반환한다.
boolean equals(Object o) 동일한 Map인지 비교한다.
Object get(Object key) 지정한 key객체에 대응하는 value객체를 찾아서 반환한다.
int hashCode() 해시코드를 반환한다.
boolean isEmpty() Map이 비어있는지 확인한다.
Set keySet() Map에 저장된 모든 key객체를 반환한다.
Object put(Object key, Object value) Map에 value객체를 key객체에 연결(mapping)하여 저장한다.
void putAll(Map t) 지정된 Map의 모든 key-value쌍을 추가한다.
Object remove(Object key) 지정한 key객체와 일치하는 key-value객체를 삭제한다.
int size() Map에 저장된 key-value쌍의 개수를 반환한다.
Collection values() Map에 저장된 모든 value객체를 반환한다.