Wie verwendet man HashSet in Java?

Wie Verwendet Man Hashset In Java



Java hat eine Sammlungsklasse namens HashSet, die die Set-Schnittstelle implementiert, die eine Hash-Tabelle zur Speicherung verwendet. Es wird verwendet, um eine Sammlung unterschiedlicher Elemente in einer beliebigen Anordnung zu halten. Der Hauptvorteil der Verwendung von HashSet besteht darin, dass es einen schnellen Zugriff auf Elemente ermöglicht, da es Hashing zum Speichern der Elemente verwendet. HashSet ist ideal, um Duplikate zu entfernen und gemeinsame Elemente zwischen zwei Sätzen zu finden.

Diese Anleitung veranschaulicht das HashSet zusammen mit möglichen Beispielen in Java.

Wie verwendet man HashSet in Java?

Um HashSet in Java zu verwenden, importieren Sie zuerst die HashSet-Klasse. Erstellen Sie danach ein HashSet-Objekt und fügen Sie Elemente mit dem „ hinzufügen() ' Methode. Verwenden Sie die Funktion remove(), um ein Mitglied des HashSets zu entfernen.







Benutzer können auch die Methode contains() verwenden, um zu berechnen, ob ein Element im HashSet vorhanden ist. Um schließlich über die Elemente im HashSet zu iterieren, verwenden Sie eine for-each-Schleife.



Hier sind einige Beispiele für die Verwendung von HashSet in Java:



Beispiel 1: Entfernen von Duplikaten aus einer ArrayList
Ein häufiger Anwendungsfall für HashSet ist das Entfernen von Duplikaten aus einer Sammlung. Hier ist ein Beispiel für die Verwendung von HashSet zum Entfernen von Duplikaten aus einer ArrayList:





importieren Java. util . Anordnungsliste ;
importieren Java. util . HashSet ;

öffentlich Klasse RemoveDuplicatesExample {
öffentlich statisch Leere hauptsächlich ( Schnur [ ] Argumente ) {
ArrayList listWithDuplicates = neu Anordnungsliste ( ) ;
listWithDuplicates. hinzufügen ( 'Apfel' ) ;
listWithDuplicates. hinzufügen ( 'Banane' ) ;
listWithDuplicates. hinzufügen ( 'orange' ) ;
listWithDuplicates. hinzufügen ( 'Apfel' ) ;
listWithDuplicates. hinzufügen ( 'orange' ) ;

HashSet setWithoutDuplicates = neu HashSet ( listWithDuplicates ) ;
ArrayList listWithoutDuplicates = neu Anordnungsliste ( setWithoutDuplicates ) ;

System. aus . println ( 'Liste mit Duplikaten: ' + listWithDuplicates ) ;
System. aus . println ( 'Liste ohne Duplikate: ' + listWithoutDuplicates ) ;
}
}

Die Beschreibung des obigen Codes ist unten angegeben:

  • Erstellen Sie zunächst eine ArrayList von Zeichenfolgen mit Duplikaten.
  • Erstellen Sie dann ein HashSet aus der ArrayList. Da ein HashSet nur eindeutige Elemente enthalten kann, werden die Duplikate effektiv entfernt.
  • Erstellen Sie am Ende eine neue ArrayList aus dem HashSet, um eine Liste ohne Duplikate zu erhalten.

Ausgang



Die Ausgabe zeigt, dass die Duplizierung aus der Liste entfernt wurde.

Beispiel 2: Finden gemeinsamer Elemente zwischen zwei Mengen
Ein weiterer Anwendungsfall für HashSet besteht darin, gemeinsame Elemente zwischen zwei Sätzen zu finden. Hier ist ein Beispiel für die Verwendung von HashSet, um gemeinsame Elemente zwischen zwei Sätzen zu finden:

importieren Java. util . HashSet ;

öffentlich Klasse FindCommonElementsExample { // Klassennamen angeben
öffentlich statisch Leere hauptsächlich ( Schnur [ ] Argumente ) {
HashSet-Satz1 = neu HashSet ( ) ;
Set 1. hinzufügen ( 1 ) ;
Set 1. hinzufügen ( 2 ) ; // Werte hier hinzufügen
Set 1. hinzufügen ( 3 ) ;

HashSet-Satz2 = neu HashSet ( ) ;
Satz2. hinzufügen ( 2 ) ;
Satz2. hinzufügen ( 3 ) ; // Werte hier hinzufügen
Satz2. hinzufügen ( 4 ) ;

HashSet gemeinsameElemente = neu HashSet ( Set 1 ) ;
gemeinsameElemente. behaltenAlle ( Satz2 ) ;

System. aus . println ( 'Set 1: ' + Set 1 ) ;
System. aus . println ( 'Satz 2: ' + Satz2 ) ;
System. aus . println ( 'Gemeinsame Elemente: ' + gemeinsameElemente ) ;
}
}

Die Erklärung ist unten angegeben:

  • Erstellen Sie zunächst zwei HashSet-Objekte und fügen Sie ihnen einige Ganzzahlen hinzu.
  • Erstellen Sie dann ein neues HashSet-Objekt und fügen Sie ihm alle Elemente aus set1 hinzu.
  • Rufen Sie danach die Methode „retainAll()“ für dieses neue HashSet-Objekt auf und übergeben Sie „set2“ als Argument.
  • Es entfernt effektiv alle Elemente aus dem neuen HashSet, die nicht in set2 enthalten sind, und hinterlässt nur die gemeinsamen Elemente.

Ausgang

Die Ausgabe zeigt, dass gemeinsame Elemente zwischen zwei Sätzen gefunden wurden.

Abschluss

HashSet ist eine leistungsstarke Sammlungsklasse in Java, die verwendet wird, um eine Reihe eindeutiger Elemente in keiner bestimmten Reihenfolge zu speichern. Es bietet Methoden wie „ hinzufügen() “, „ entfernen() ', Und ' enthält() “, um Elemente im HashSet hinzuzufügen, zu entfernen und auf Vorhandensein zu prüfen. Es iteriert über Elemente und ist einfach mit einer for-each-Schleife. Durch die Implementierung der Methoden hashCode() und equals() können Benutzer auch benutzerdefinierte Objekte in einem HashSet verwenden.

In diesem Handbuch wurden alle möglichen Beispiele für die Verwendung des HashSet in Java behandelt.