[자료구조]-Set
개념
Collection은 자바에서 데이터의 집합, 그룹을 의미한다.
Set은 Collection의 하위 인터페이스 이다.
특징
- Set은 List와 다르게 데이터를 중복해서 저장할 수 없다.
- 데이터를 인덱스로 관리하지 않는다.
- 저장 순서가 보장되지 않는다.
대표적인 클래스
- HashSet
- TreeSet
- LinkedHashSet
1. HashSet
- Set 컬렉션을 구현하는 대표적인 클래스
- 데이터를 중복 저장할 수 없고 순서를 보장하지 않는다.
2. TreeSet
- 데이터를 중복 저장할 수 없고 입력한 순서대로 값을 저장하지 않는다.
- TreeSet은 기본적으로 오름차순 데이터 정렬 한다.
3. LinkedHashSet
- 데이터를 중복 저장할 수 없다.
- 입력된 순서대로 데이터 관리한다.
Set API
Set<T> set = new HashSet<T>(); // 객체 선언
set.add(E element); // 데이터 추가
set.remove(E element); // 데이터 삭제
set.size(); // 크기 반환
Iterator<T> it = set.iterator(); // 이터레이터 생성
요약
- Set은 데이터를 중복 저장할 수 없다.
- 각 클래스의 특징을 고려해서 선택하자