Die Set-Schnittstelle in Java

Die Schnittstelle java.util.set  ist ein Untertyp der Schnittstelle java.util.Collections . Es stellt eine Menge von Objekten dar, von denen jedes nur einmal existieren kann. Die Set-Schnittstelle enthält nur die Methoden, die von Collections.

Implementierungen von Set

Die Java-Plattform verfügt über 3 Implementierungen von Set. Sie können eine der folgenden Object Collections auswählen:
  • java.util.HashSet
  • java.util.TreeSet
  • java.util.LinkedHashSet
Jede dieser Implementierungen speichert die Elemente in einer Hash-Tabelle. Dies ist die beste Implementierung, aber es ist anders, wenn es um das Scannen des Sets und die Reihenfolge der Elemente sowie die Zugriffszeit und Änderungen in diesen Listen geht. Set-Instanzen sind trotz ihrer Unterschiede vergleichbar, zwei Implementierungen sind gleich, wenn sie die gleichen Elemente enthalten.

HashSet wird von einem HashMap. Es gibt keine Garantie, dass die Reihenfolge während des Kurses eingehalten wird.

TreeSet ordnen die Elemente nach den Werten und nicht mit den Schlüsseln, was etwas langsam ist als HashTable.

LinkedList Elemente basierend auf der Reihenfolge während insert.

Hier sind einige Beispiele für die Erstellung des Set:

Set hset = new HashSet(); 
Set tset = new TreeSet();
Set lset = new LinkedHashSet();

Basic Set

1)void add(Object o)
Fügt der Auflistung ein Element hinzu. Diese Methode wird von der Schnittstelle Collection.


Set hset = new HashSet(); 
hset.add(new String("1"));
hset.add(new String("2"));
2)boolean remove(Object o)
Entfernt das jeweilige Element aus der Sammlung. Wenn es existiert, gibt es einen booleschen Wert zurück.

hset.remove("1"); 
3)Iterator iterator()
Gibt einen Iterator auf Set.

Set hset = new HashSet(); 
Iterator iterator = hset.iterator();
while(iterator.hasNext(){
String element = (String) iterator.next();
}
4)Int size()
Gibt die Anzahl der Elemente im Satz zurück. Set.

System.out.println(hset.size()); 

Generische Deklaration von Set

Objekte können standardmäßig im Set hinzugefügt werden Satz  Es ist jedoch möglich, den Objekttyp, den Sie einfügen möchten, in Set:

Set< String> set = neues HashSet< String> (); 
Diese Anweisung akzeptiert nur String-Objekte. Der Vorteil ist, dass Sie dann Set without cast:

for(String Object : set){
//do something
}
References:
Java Collection: Set
Javadoc: Die Set-Schnittstelle