본문 바로가기
Java의 정석 기초편(남궁성) 정리 + a/11. 컬렉션 프레임웤

03 ~ 06. Collection인터페이스 , List인터페이스 , Set인터페이스 , Map인터페이스

by doriver 2022. 9. 28.

Collection인터페이스

컬렉션 클래스에 저장된 데이터를 읽고, 추가하고, 삭제하는 등 컬렉션을 다루는데 가장 기본적인 메서드들을 정의하고 있다

 

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) 지정된 Collection에 포함된 객체들을 삭제한다
boolean retainAll(Collection c) 지정된 Collection에 포함된 객체만을 남기고 다른 객체들은 Collection에서 삭제한다. 이 작업으로 Collection에 변화가 있으면 true 그렇지 않으면 false를 반환
int size() Collection에 저장된 객체의 수를 반환한다
Object[ ] toArray() Collection에 저장된 객체를 객체배열(Object[ ] )로 반환한다
Object[ ] toArray(Object[ ] a) 지정된 배열에 Collection의 객체를 저장해서 반환한다

 

 

List인터페이스는 중복을 허용하면서 저장순서가 유지되는 컬렉션을 구현하는데 사용된다

List인터페이스에 정의된 메서드

( Collection 인터페이스로부터 상속받은 것들은 제외)

메서드 설명
void add (int index, Object element)
boolean addAll(int index, Collection c)
지정된 위치(index)에 객체(element) 또는 컬렉션에 포함된 객체들을 추가한다
Object get(int index) 지정된 위치(index)에 있는 객체를 반환한다
int indexOf(Object o) 지정된 객체의 위치(index)를 반환한다
(List의 첫번째 요소부터 순방향으로 찾는다)
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인터페이스는 중복을 허용하지 않고 저장순서가 유지되지 않는 컬랙션 클래스를 구현하는데 사용된다

Set인터페이스에 정의된 메서드

(위에 있는 Collection인터페이스에 정의된 메서드 참조)

 

 

Map인터페이스는 key와 value를 하나의 쌍으로 묶어 저장하는 컬렉션 클래스를 구현하는데 사용된다.

key는 중복될수 없지만 value는 중복을 허락한다. 

기존에 저장된 데이터와 중복된 키와 값을 저장하면 기존의 값은 없어지고 마지막에 저장된 값이 남게된다.

Map인터페이스에 정의된 메서드

메서드 설명
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객체를 반환한다