HashSet
- Set 인터페이스에서 지원하는 구현 클래스
- 순서대로 입력되지 않고, 일정하게 유지되지 않습니다.
- null 요소 허용
- 중복을 허용하지 않음
중복을 걸러내는 과정
- hashCode() 메서드를 호출해 코드를 얻음
- 저장되어 있는 객체들의 해시 코드와 비교해 같은 해시 코드가 있는지 확인
- 있다면 다시 equlas() 메서도르 두 객체를 비교
- true 가 나오면 동일한 객체로 판단하고 중복 저장하지 않습니다.
* String 형에 대해서 중복을 걸러내는 과정의 특징
: 앞의 과정과 같은데, 다른 점은 String 클래스가 hashCode(), equals() 메소드를 재정의해서 같은 문자열일 경우,
리턴값을 true 로 나오게 했기 때문입니다.
변수 선언 방법
- hashSet<데이터 타입> 변수명 = new HashSet<데이터타입>();
해당 데이터 타입형의 HashMap 데이터가 들어갑니다.
다양한 메서드들
- add
- remove
- clear
- size
- contains(찾고자 하는 값 )
예제
프로그래머스 [ 신고 결과 받기 ] 문제에서 사용될 수 있습니다.
https://tjdwns4537.tistory.com/97
'JAVA' 카테고리의 다른 글
putIfAbsent (0) | 2022.08.11 |
---|---|
Java의 이중 중괄호 초기화 (0) | 2022.08.11 |
Stream (0) | 2022.08.10 |
HashMap (0) | 2022.08.10 |
백트래킹 (0) | 2022.07.27 |