컬렉션 프레임웍이란 데이터 군을 저장하는 클래스들을 표준화한 설계를 뜻합니다.
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객체 반환 |
출처 : 자바의 정석
'코딩 > Java' 카테고리의 다른 글
Java Properties class (0) | 2020.08.10 |
---|---|
Java Annotation이란? 표준 에너테이션에 대해서 (0) | 2020.07.25 |
Java Iterator (0) | 2020.07.16 |
Java 오늘 날짜 기준으로 일주일 출력하기 (0) | 2020.07.12 |
Java 소수점 끊기, 반올림방법 (0) | 2020.07.03 |
최근댓글