반응형
HashSet
Set 인터페이스 구현한 대표적인 컬렉션 클래스 : HashSet
- 순서 유지 X
- 중복 X
- 새로운 요소를 추가할 때 add메서드나 addAll메서드를 사용하는데 만일
HashSet에 이미 저장되어 중복요소가 추가 된다면 메서드들은 false 을 반환하여
중복요소를 알리고 추가에 실패 했다는 것을 알린다.
- List 인터페이스를 구현한 컬렉션 ArrayList와는 다르게 HashSet은 저장순서를 유지 하지 X
- 저장순서를 유지하고자 한다면 LinkedHashSet을 사용
- 내부적으로 빠른 검색 할 수 O
- List 보다 성능 좋다
**
- 같은 자료를 보관할 수 X
- 내부적으로 빠른 검색 할 수 O
- List 보다 성능 좋다
*HashSet 메서드
* HashSet을 이용한 로또게임
LinkedHashSet
- HashSet을 상속 받는다.
- LinkedHashSet 은 부모인 HashSet을 만들고 내부적으로는 LinkedHashMap을 만든다.
LinkedHashSet | |
HashSet | Linked |
해싱기법 Set | 순서 O |
순서 X , 중복 X |
** 복습) HashSet의 특징 중복 X , 순서X
- 다음 예제를 보면 p2와 p3의 주소지가 같다. 이와 같이 주소 값이 같으면 마지막이 덮어쓰기
되어 먼저 입력되있던 것이 사라진다. 중복 값을 허용하지 않기 때문이다.
반응형