Java에서 HashSet을 사용하는 방법?

Java Eseo Hashset Eul Sayonghaneun Bangbeob



Java에는 저장을 위해 해시 테이블을 사용하는 Set 인터페이스를 구현하는 HashSet이라는 컬렉션 클래스가 있습니다. 모든 배열에서 고유한 요소의 컬렉션을 유지하는 데 사용됩니다. HashSet 사용의 주요 이점은 해싱을 사용하여 요소를 저장하므로 요소에 빠르게 액세스할 수 있다는 것입니다. HashSet은 중복을 제거하고 두 세트 사이의 공통 요소를 찾는 데 이상적입니다.

이 가이드는 Java에서 가능한 예제와 함께 HashSet을 설명합니다.

Java에서 HashSet을 사용하는 방법?

Java에서 HashSet을 사용하려면 먼저 HashSet 클래스를 가져옵니다. 그런 다음 HashSet 개체를 만들고 '를 활용하여 요소를 추가합니다. 추가하다() ' 방법. HashSet의 멤버를 제거하려면 remove() 함수를 사용하십시오.







사용자는 HashSet에 요소가 존재하는지 계산하기 위해 contains() 메서드를 활용할 수도 있습니다. 마지막으로 HashSet의 요소를 반복하려면 for-each 루프를 사용합니다.



다음은 Java에서 HashSet을 사용하는 방법에 대한 몇 가지 예입니다.



예제 1: ArrayList에서 중복 제거
HashSet의 일반적인 사용 사례 중 하나는 컬렉션에서 중복 항목을 제거하는 것입니다. 다음은 HashSet을 사용하여 ArrayList에서 중복 항목을 제거하는 방법의 예입니다.





수입 자바. 유틸리티 . 배열목록 ;
수입 자바. 유틸리티 . 해시셋 ;

공공의 수업 중복 제거예제 {
공공의 공전 무효의 기본 ( [ ] 인수 ) {
ArrayList listWithDuplicates = 새로운 배열목록 ( ) ;
listWithDuplicates. 추가하다 ( '사과' ) ;
listWithDuplicates. 추가하다 ( '바나나' ) ;
listWithDuplicates. 추가하다 ( '주황색' ) ;
listWithDuplicates. 추가하다 ( '사과' ) ;
listWithDuplicates. 추가하다 ( '주황색' ) ;

HashSet setWithoutDuplicates = 새로운 해시셋 ( listWithDuplicates ) ;
ArrayList listWithoutDuplicates = 새로운 배열목록 ( setWithoutDuplicates ) ;

체계. 밖으로 . 프린트 ( '중복 목록: ' + listWithDuplicates ) ;
체계. 밖으로 . 프린트 ( '중복 없는 목록: ' + 중복 없는 목록 ) ;
}
}

위 코드에 대한 설명은 다음과 같습니다.

  • 먼저 중복된 문자열의 ArrayList를 만듭니다.
  • 그런 다음 ArrayList에서 HashSet을 만듭니다. HashSet은 고유한 요소만 포함할 수 있기 때문에 중복 항목을 효과적으로 제거합니다.
  • 마지막으로 HashSet에서 새 ArrayList를 생성하여 중복 없는 목록을 가져옵니다.

산출



출력은 중복이 목록에서 제거되었음을 보여줍니다.

예 2: 두 세트 사이의 공통 요소 찾기
HashSet의 또 다른 사용 사례는 두 세트 사이의 공통 요소를 찾는 것입니다. 다음은 HashSet을 사용하여 두 세트 사이의 공통 요소를 찾는 방법의 예입니다.

수입 자바. 유틸리티 . 해시셋 ;

공공의 수업 FindCommonElementsExample { // 클래스 이름 지정
공공의 공전 무효의 기본 ( [ ] 인수 ) {
해시셋 세트1 = 새로운 해시셋 ( ) ;
세트1. 추가하다 ( 1 ) ;
세트1. 추가하다 ( 2 ) ; // 여기에 값 추가
세트1. 추가하다 ( ) ;

해시셋 set2 = 새로운 해시셋 ( ) ;
세트2. 추가하다 ( 2 ) ;
세트2. 추가하다 ( ) ; // 여기에 값 추가
세트2. 추가하다 ( 4 ) ;

HashSet commonElements = 새로운 해시셋 ( 세트1 ) ;
commonElements. 모두 유지 ( 세트2 ) ;

체계. 밖으로 . 프린트 ( '세트 1: ' + 세트1 ) ;
체계. 밖으로 . 프린트 ( '세트 2: ' + 세트2 ) ;
체계. 밖으로 . 프린트 ( '공통 요소: ' + 공통 요소 ) ;
}
}

설명은 다음과 같습니다.

  • 먼저 두 개의 HashSet 개체를 만들고 여기에 정수를 추가합니다.
  • 그런 다음 새 HashSet 개체를 만들고 set1의 모든 요소를 ​​여기에 추가합니다.
  • 그런 다음 이 새로운 HashSet 객체에 대해 retainAll() 메서드를 호출하고 set2를 인수로 전달합니다.
  • 이는 set2에 없는 새 HashSet에서 모든 요소를 ​​효과적으로 제거하고 공통 요소만 남깁니다.

산출

출력은 두 집합 간에 공통 요소가 발견되었음을 보여줍니다.

결론

HashSet은 고유한 요소 집합을 특별한 순서 없이 저장하는 데 사용되는 Java의 강력한 컬렉션 클래스입니다. '와 같은 방법을 제공합니다. 추가하다() ”, “ 제거하다() ', 그리고 ' 포함() ”를 사용하여 HashSet에 요소가 있는지 추가, 제거 및 확인합니다. 요소를 반복하며 for-each 루프로 간단합니다. hashCode() 및 equals() 메서드를 구현함으로써 사용자는 HashSet에서 사용자 정의 객체를 사용할 수도 있습니다.

이 가이드는 Java에서 HashSet을 사용하는 모든 가능한 예제를 다룹니다.