자바의 Collection Framework 는 데이터를 효율적으로 관리하고 조작하기 위한 클래스와 인터페이스의 집합입니다. 주요 인터페이스로는 List , Set , Map 등이 있으며, 각각 고유한 특성과 용도를 가지고 있습니다. 아래는 각 인터페이스와 주요 구현 클래스, 그리고 사용 예제입니다.
1. Set 인터페이스
특징 :
중복 요소를 허용하지 않음.
요소의 순서를 보장하지 않음. (HashSet)
순서를 보장하는 경우도 있음. (LinkedHashSet)
정렬된 순서를 유지. (TreeSet)
주요 구현 클래스
HashSet : 요소의 순서를 보장하지 않음.
LinkedHashSet : 요소의 삽입 순서를 유지.
TreeSet : 요소를 정렬된 상태로 유지.
2. Map 인터페이스
특징 :
키-값 쌍(Key-Value Pair)으로 데이터를 저장.
키는 중복을 허용하지 않음.
값은 중복 가능.
주요 구현 클래스
HashMap : 순서를 보장하지 않음.
LinkedHashMap : 삽입 순서를 유지.
TreeMap : 키를 정렬된 상태로 유지.
3. List 인터페이스
주요 구현 클래스
ArrayList : 배열 기반, 검색 속도 빠름.
LinkedList : 연결 리스트 기반, 삽입/삭제 속도 빠름.
예제
4. Set, Map, List의 비교
인터페이스중복 허용순서 보장주요 구현 클래스
Set
X
X
HashSet, TreeSet, LinkedHashSet
Map
X (Key)
X (기본)
HashMap, TreeMap, LinkedHashMap
List
O
O
ArrayList, LinkedList
5. 실전 예제
학생 이름과 점수를 저장하고 정렬된 점수로 출력하기
출력을 정리한 프로그램
각 컬렉션의 특징을 활용해 상황에 맞는 데이터 구조를 설계하세요.