Set

김민석·2023년 8월 10일

컬렉션의 주요 인터페이스

저장 순서가 유지되지 않고, 중복 객체도 저장하지 못하게 하는 자료 구조이다.
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
    주어진 객체를 삭제

0개의 댓글