Collection
은 자바의 대표적인 자료구조로 크게 List, Set, Map
이 있습니다.
List, Set
은 Collection 인터페이스를 상속하고, Map
은 별도 인터페이스로 정의됩니다.
인터페이스 | 구현 클래스 | 설명 |
---|---|---|
List<E> | Vector, LinkedList, ArrayList | 순서 O, 중복 O |
Set<E> | HashSet, TreeSet | 순서 X, 중복 X |
Map<K,V> | TreeMap, Hashtable, HashMap | 키 + 값, 순서 X, 키 중복 X, 값 중복 O |
Collection 인터페이스는 Iterator 인터페이스를 상속 받아서 기본적인 기능을 정의합니다. 그리고 List와 Set 인터페이스가 상속 받아 사용합니다.
메소드 | 설명 |
---|---|
boolean add(E e) | 컬렉션에 전달된 요소를 추가 |
boolean addAll(Collection c) | 컬렉션에 전달된 컬렉션 객체를 추가 |
void clear() | 컬렉션의 모든 요소를 제거 |
boolean contains(Object o) | 컬렉션에 전달된 객체의 포함 여부 |
boolean containsAll(Collection c) | 컬렉션에 컬렉션 객체 포함 여부 |
boolean equals(Object o) | 컬렉션과 전달된 객체가 같은지 확인 |
int hashCode() | 컬렉션의 해시코드를 반환 |
boolean isEmpty() | 컬렉션이 비어 있는지 확인 |
Iterator<E> iterator() | 컬렉션의 반복자를 반환 |
boolean remove(Object o) | 컬렉션에서 전달된 객체를 제거 |
boolean removeAll(Collection c) | 컬렉션에서 전달된 컬렉션 객체를 제거 |
boolean retainAll(Collection c) | 컬렉션에서 전달된 컬렉션 객체만 남기고 제거 |
int size() | 컬렉션의 요소 개수를 반환 |
Object[] toArray() | 컬렉션의 모든 요소를 배열로 반환 |
Object[] toArray(Object[] a) | 전달된 배열에 컬렉션 객체를 저장해서 반환 |
Java 1.2 부터 추가된 컬렉션 프레임워크 지원 메소드의 집합 클래스입니다.
메소드 | 설명 |
---|---|
sort(List L) | 리스트 정렬 |
sort(List L , reverseOrder()) | 리스트 역순 정렬 |
max(List L) | 리스트 최대값 |
min(List L) | 리스트 최소값 |
shuffle(List L) | 리스트 랜덤 |
binarySearch(List L , Key) | 이진 검색을 통해 위치를 반환 |
disjoint(List L1 , List L2) | 두 리스트의 값이 다른지 검사 |