본문 바로가기

Java/Java_HashSet , LinkedHashSet

Java_HashSet , LinkedHashSet

반응형

HashSet

Set 인터페이스 구현한 대표적인 컬렉션 클래스 : HashSet
 - 순서 유지 X
 -  중복 X

 - 새로운 요소를 추가할 때 add메서드나 addAll메서드를 사용하는데 만일 

   HashSet에 이미 저장되어 중복요소가 추가 된다면 메서드들은 false 을 반환하여

   중복요소를 알리고 추가에 실패 했다는 것을 알린다.

 - List 인터페이스를 구현한 컬렉션 ArrayList와는 다르게 HashSet은 저장순서를 유지 하지 X

 - 저장순서를 유지하고자 한다면 LinkedHashSet을 사용 

- 내부적으로 빠른 검색 할 수 O

- List 보다 성능 좋다

 

**

- 같은 자료를 보관할 수 X

- 내부적으로 빠른 검색 할 수 O

- List 보다 성능 좋다

 

 

 

 

 

*HashSet 메서드

HashSet 메서드 

 

 

 

* HashSet을 이용한 로또게임

 

 

 

LinkedHashSet

- HashSet을 상속 받는다.

- LinkedHashSet 은 부모인 HashSet을 만들고 내부적으로는 LinkedHashMap을 만든다.

LinkedHashSet
HashSet Linked
해싱기법 Set 순서 O
순서 X ,  중복 X  

 

 

 

 

** 복습) HashSet의 특징 중복 X , 순서X

- 다음 예제를 보면 p2와 p3의 주소지가 같다. 이와 같이 주소 값이 같으면 마지막이 덮어쓰기

  되어 먼저 입력되있던 것이 사라진다. 중복 값을 허용하지 않기 때문이다.

 

 

 

반응형