컬렉션의 주요 인터페이스
저장 순서가 유지되지 않고, 중복 객체도 저장하지 못하게 하는 자료 구조이다.
null도 중복을 허용하지 않기 때문에 1개의 null만 저장 가능하다.
구현 클래스로 HashSet, LinkedHashSet, TreeSet이 있다.
HashSet
- Set에 객체를 저장할 때 hash함수를 사용하여 처리 속도가 빠르다.
- 동일 객체 뿐 아니라 동등 객체도 중복하여 저장하지 않는다.
LinkedHashSet
- HashSet과 거의 동일하지만 Set에 추가되는 순서를 유지한다는 점이 다르다.
Set 계열 주요 메서드
1) 객체 추가
- 메서드 : add(E e), 리턴 타입 : boolean
주어진 객체를 맨 끝에 추가
- 메서드 : addAll(Collection<? extends E> c), 리턴 타입 : boolean
주어진 Collection타입 객체를 리스트에 추가
2) 객체 검색
- 메서드 : contains(Object o), 리턴 타입 : boolean
주어진 객체가 저장되어 있는지 여부
- 메서드 : iterator(), 리턴 타입 : Iterator<>
저장된 객체를 한번씩 가져오는 반복자 리턴
- 메서드 : isEmpty(), 리턴 타입 : boolean
컬렉션이 비어 있는지 조사
- 메서드 : size(), 리턴 타입 : int
저장되어 있는 전체 객체수를 리턴
3) 객체 삭제
- 메서드 : clear(), 리턴 타입 : void
저장된 모든 객체를 삭제
- 메서드 : remove(Object o), 리턴 타입 : boolean
주어진 객체를 삭제