컬렉션 프레임워크에서는 크게 3가지 타입이 존재한다. List, Set, Map이 존재한다. 여기서 List와 Set의 공통된 부분을 다시 뽑아서 새로운 인터페이스인 Collection을 추가로 정의하였다.
Collection Interface
- List와 Set의 공통된 부분을 뽑아 만든 Collection Interface는 저장된 데이터를 읽고(get), 추가하고(add, addAll), 삭제(remove, removeAll) 등 컬렉션을 다루는데 가장 기본적인 메서드들을 저장하고 있다.
List Interface
- 중복 허용을 하면서, 저장순서가 유지되는 컬렉션을 구현하는데 사용된다.
Set Interface
- 중복을 허용하지 않고,저장순서가 유지됮 않는 컬렉션 클래스를 구현하는데 사용된다. HashSet, TreeSet등이 있다.
Map Interface
- key, value의 쌍으로 이루어진 데이터 집합으로 순서는 유지되지 않고, 키는 중복이 허용되지 않지만, 값은 중복이 허용된다.
- entrySet을 사용하여, key-value쌍을 Map.Entry타입의 객체로 저장한 set으로 얻을 수 있다.
- keySet로 set으로 key(중복을 허용하지 않기 때문에)객체를 얻을 수 있고, values로 collection 객체로 얻을 수 있다.
Map.Entry Interface
- 해당 인터페이스는 Map 인터페이스의 내부 인터페이스이다.
- Map에 저장되는 key-value쌍을 다루기 위해 내부적으로 Entry인터페이스를 정의해 놓았다.
Reference