HashSet이란 무엇인가.Backend/java2018. 8. 15. 17:57
Table of Contents
반응형
HashSet – 중복허용 x , 순서유지 x
1. Set인터페이스를 구현한 대표적인 컬렉션 클래스 ( 중복허용 x , 순서유지 x )
2. 순서를 유지하고자 한다면 , LinkedHashSet클래스를 사용해야 한다.
3. HashSet에 객체를 저장할 때 Boolean add(Object o)를 사용하며 , 기존에 저장된 객체와 중복된 객체를 저장하면 false를 반환한다.
4. Boolean add(Object o)는 저장할 객체의 equals()와 hashCode()를 호출하므로 저장할 객체의 equals()와 hashCode()가 적절히 오버라이딩되어 있어야 한다.
그렇지 않으면 중복된 객체를 중복된 것으로 간주하지 않을 수 있다.
5.
동일 객체에 대해 hashCode()를 여러
번 호출해도 동일한 값을 반환해야 한다.
6. Equals()로 비교해서 true를 얻은 두 객체의 hashCode()값은 일치해야 한다.
7. Equals()로 비교해서 false를 얻은 두 객체의 hashCode()값은 서로 다른 것이 보통이지만 같아도 문제 없다.
그러나 성능향상을 위해 가능하면 서로 다른 값을 반환하도록 오버라이딩 하자
* HashSet 메서드*
반응형
'Backend > java' 카테고리의 다른 글
Comparator 과 Comparable (0) | 2018.08.15 |
---|---|
TreeSet이란 무엇인가 (0) | 2018.08.15 |
스택 ( Stack ) 과 큐 ( Queue ) (0) | 2018.08.15 |
ArrayList 와 LinkedList 어떤 것을 써야할까. (0) | 2018.08.15 |
LinkedList – 이중 원형 링크드 리스트 (0) | 2018.08.15 |
@IT grow. :: IT grow.
#IT #먹방 #전자기기 #일상
#개발 #일상