In diesem Tutorial lernen wir die Set-Schnittstelle in Java und ihre Methoden kennen.
Die Set
Schnittstelle des Java- Collections
Frameworks bietet die Funktionen des mathematischen Satzes in Java. Es erweitert die Collection
Schnittstelle.
Im Gegensatz zur List
Schnittstelle dürfen Sets keine doppelten Elemente enthalten.
Klassen, die Set implementieren
Da Set
es sich um eine Schnittstelle handelt, können wir daraus keine Objekte erstellen.
Um die Funktionen der Set
Schnittstelle zu nutzen, können wir folgende Klassen verwenden:
- HashSet
- LinkedHashSet
- EnumSet
- TreeSet
Diese Klassen werden im Collections
Framework definiert und implementieren die Set
Schnittstelle.
Schnittstellen, die Set erweitern
Die Set
Schnittstelle wird auch um folgende Subschnittstellen erweitert:
- SortedSet
- NavigableSet
Wie benutzt man Set?
In Java müssen wir das java.util.Set
Paket importieren , um es verwenden zu können Set
.
// Set implementation using HashSet Set animals = new HashSet();
Hier haben wir ein Set
genanntes Tier geschaffen. Wir haben die HashSet
Klasse verwendet, um die Set
Schnittstelle zu implementieren .
Methoden der Einstellung
Die Set
Schnittstelle enthält alle Methoden der Collection
Schnittstelle. Es ist, weil Collection
es eine super Schnittstelle von ist Set
.
Einige der häufig verwendeten Methoden der Collection
Schnittstelle, die auch in der Set
Schnittstelle verfügbar sind, sind:
- add () - fügt das angegebene Element zur Menge hinzu
- addAll () - Fügt alle Elemente der angegebenen Auflistung zur Menge hinzu
- iterator () - Gibt einen Iterator zurück, mit dem nacheinander auf Elemente der Menge zugegriffen werden kann
- remove () - Entfernt das angegebene Element aus der Menge
- removeAll () - Entfernt alle Elemente aus der Menge, die in einer anderen angegebenen Menge vorhanden sind
- keepAll () - behält alle Elemente in der Menge bei, die auch in einer anderen angegebenen Menge vorhanden sind
- clear () - entfernt alle Elemente aus der Menge
- size () - gibt die Länge (Anzahl der Elemente) der Menge zurück
- toArray () - gibt ein Array zurück, das alle Elemente der Menge enthält
- enthält () - gibt zurück,
true
wenn die Menge das angegebene Element enthält - enthältAll () - Gibt zurück,
true
wenn die Menge alle Elemente der angegebenen Auflistung enthält - hashCode () - gibt einen Hashcode-Wert zurück (Adresse des Elements in der Menge)
Weitere Informationen zu den Methoden der Set
Benutzeroberfläche finden Sie unter Java Set (offizielle Java-Dokumentation).
Operationen einstellen
Die Java- Set
Schnittstelle ermöglicht es uns, grundlegende mathematische Mengenoperationen wie Vereinigung, Schnittmenge und Teilmenge auszuführen.
- Vereinigung - um die Vereinigung zweier Mengen x und y zu erhalten, können wir verwenden
x.addAll(y)
- Schnittpunkt - Um den Schnittpunkt zweier Mengen x und y zu erhalten, können wir verwenden
x.retainAll(y)
- Teilmenge - Um zu überprüfen, ob x eine Teilmenge von y ist, können wir verwenden
y.containsAll(x)
Implementierung der Set-Schnittstelle
1. Implementieren der HashSet-Klasse
import java.util.Set; import java.util.HashSet; class Main ( public static void main(String() args) ( // Creating a set using the HashSet class Set set1 = new HashSet(); // Add elements to the set1 set1.add(2); set1.add(3); System.out.println("Set1: " + set1); // Creating another set using the HashSet class Set set2 = new HashSet(); // Add elements set2.add(1); set2.add(2); System.out.println("Set2: " + set2); // Union of two sets set2.addAll(set1); System.out.println("Union is: " + set2); ) )
Ausgabe
Set1: (2, 3) Set2: (1, 2) Union ist: (1, 2, 3)
Weitere HashSet
Informationen finden Sie unter Java HashSet.
2. Implementieren der TreeSet-Klasse
import java.util.Set; import java.util.TreeSet; import java.util.Iterator; class Main ( public static void main(String() args) ( // Creating a set using the TreeSet class Set numbers = new TreeSet(); // Add elements to the set numbers.add(2); numbers.add(3); numbers.add(1); System.out.println("Set using TreeSet: " + numbers); // Access Elements using iterator() System.out.print("Accessing elements using iterator(): "); Iterator iterate = numbers.iterator(); while(iterate.hasNext()) ( System.out.print(iterate.next()); System.out.print(", "); ) ) )
Ausgabe
Mit TreeSet festlegen: (1, 2, 3) Zugriff auf Elemente mit iterator (): 1, 2, 3,
Weitere TreeSet
Informationen finden Sie unter Java TreeSet.
Nun , da wir wissen , was Set
ist, werden wir ihre Implementierungen in Klassen wie sehen EnumSet
, HashSet
, LinkedHashSet
und TreeSet
in den nächsten Tutorials.