Set ist eine Schnittstelle in Java, bei der es sich um eine Sammlung eindeutiger Objekte ohne Wiederholungen handelt. In diesem Tutorial erfahren Sie, wie Sie ein Set in Java erstellen und verwenden, und fügen Codebeispiele zum besseren Verständnis hinzu.
Sie können mehrere Klassen verwenden, die diese Schnittstelle implementieren, um ein Set in Java zu erstellen. Einige der beliebtesten Klassen sind HashSet, TreeSet und LinkedHashSet. Ein HashSet verwendet eine Hash-Tabelle zum Speichern von Elementen, ein TreeSet verwendet einen binären Suchbaum und ein LinkedHashSet ist eine Kombination aus einer verknüpften Liste und einer Hash-Tabelle. Jede dieser Klassen hat ihre eigenen Merkmale und eignet sich für bestimmte Verwendungsszenarien.
Um ein Set in Java zu erstellen, müssen Sie zuerst die entsprechenden Klassen importieren, dann eine Variable vom Typ Set deklarieren und mit dem Operator new ein neues Objekt erstellen. Der folgende Code erstellt beispielsweise ein HashSet:
In diesem Beispiel haben wir ein Set mit dem Namen set erstellt, das Strings enthält (Typ Set). Wir verwenden die HashSet-Klasse und den new-Operator, um ein neues Objekt zu erstellen. Beachten Sie, dass wir auch einen parametrisierten Typ (<>) verwenden, um den Typ der Elemente anzugeben, die im Set gespeichert werden sollen. In diesem Fall handelt es sich um Zeichenfolgen (String).
Definition und Funktionen von set in Java
Set in Java ist es eine Sammlung, die nur eindeutige Elemente ohne eine bestimmte Reihenfolge enthält. Im Gegensatz zu anderen Sammlungen wie List oder Queue können Sie mit Set keine doppelten Werte speichern.
Set kann von verschiedenen Klassen in Java implementiert werden, aber grundlegende Implementierungen umfassen HashSet, TreeSet und LinkedHashSet.
HashSet: Dies ist die am häufigsten verwendete Set-Implementierung in Java. HashSet verwendet eine Hash-Tabelle, um seine Elemente zu speichern, wodurch ein schneller Zugriff auf das gesuchte Element möglich ist. Die Reihenfolge der Elemente im HashSet ist jedoch nicht garantiert und kann ungeordnet sein.
TreeSet: Ein TreeSet ist eine Set-Implementierung in Form eines ausgeglichenen Baumes. Dies bedeutet, dass die Elemente im TreeSet immer in aufsteigender Reihenfolge sortiert werden. TreeSet garantiert logarithmische Komplexität für grundlegende Operationen wie das Hinzufügen, Löschen und Suchen eines Elements.
LinkedHashSet: Ein LinkedHashSet ist eine Set-Implementierung, die eine verknüpfte Liste zum Speichern von Elementen beibehält, wobei die Reihenfolge beibehalten wird, in der sie hinzugefügt werden. Auf diese Weise werden die Elemente in der Reihenfolge abgerufen, in der sie hinzugefügt wurden. Ein LinkedHashSet ist etwas weniger speichereffizient als ein HashSet, kann aber in Fällen nützlich sein, in denen die Reihenfolge des Hinzufügens von Elementen beibehalten werden muss.
Set in Java hat folgende Merkmale:
- Die Einzigartigkeit der Elemente: Jedes Element im Set muss eindeutig sein. Wenn Sie versuchen, ein Duplikat hinzuzufügen, ändert sich der Status der Sammlung nicht.
- Keine bestimmte Reihenfolge: Die Elemente im Set haben keine bestimmte Reihenfolge und können in beliebiger Reihenfolge zurückgegeben werden.
- Iterieren: Set stellt Methoden bereit, um über seine Elemente zu iterieren, z. B. forEach , iterator und stream .
- Schnelle Überprüfung des Vorkommens: Set stellt eine konstante Komplexität für den Vorgang zur Überprüfung des Vorkommens eines Elements bereit.
- Methoden zum Hinzufügen, Entfernen und Definieren der Größe: Set stellt diese Methoden zum Verwalten von Auflistungselementen bereit.
Mit der Verwendung von Set in Java können Sie eine Reihe eindeutiger Elemente effizient speichern und verwalten, ohne dass Sie ihre Reihenfolge oder Duplikate überwachen müssen.
Erstellen eines set in Java: Methoden und Beispiele
Es können mehrere Klassen verwendet werden, um ein set in Java zu erstellen, aber die gebräuchlichsten sind HashSet, TreeSet und LinkedHashSet.
1. HashSet: Ein HashSet ist eine Klasse, die eine Set implementiert Schnittstelle, die eine Hashtabelle zum Speichern von Elementen verwendet. Es garantiert nicht die Reihenfolge, in der Elemente gespeichert werden.
Set set = new HashSet<>();// добавление элементов в setset.add("элемент1");set.add("элемент2");set.add("элемент3");// вывод размера setSystem.out.println("Размер set: " + set.size());// проверка наличия элемента в setSystem.out.println("Содержит элемент1: " + set.contains("элемент1"));// удаление элемента из setset.remove("элемент2");// вывод всех элементов setfor (String element : set)
2. TreeSet: Ein TreeSet ist eine Klasse, die eine Set implementiert Schnittstelle, die Elemente in einer sortierten Reihenfolge speichert. Es verwendet die Datenstruktur "Suchbaum".
Set set = new TreeSet<>();// добавление элементов в setset.add(3);set.add(1);set.add(2);// вывод всех элементов set в отсортированном порядкеfor (Integer element : set)
3. LinkedHashSet: LinkedHashSet ist eine Klasse, die eine Set implementiert Schnittstelle, die Elemente in der Reihenfolge speichert, in der sie hinzugefügt werden. Es verwendet eine verknüpfte Liste zum Speichern von Elementen und eine Hashtabelle zum schnellen Zugriff auf Elemente.
Set set = new LinkedHashSet<>();// добавление элементов в setset.add("элемент1");set.add("элемент2");set.add("элемент3");// вывод всех элементов set в порядке их добавленияfor (String element : set)
Set in Java bietet eine bequeme Möglichkeit, mit einer Reihe von eindeutigen Elementen zu arbeiten. Die Auswahl einer Klasse zum Erstellen eines set hängt von den erforderlichen Eigenschaften ab, z. B. der Reihenfolge der Speicherung oder der Abwesenheit von Duplikaten. Jetzt wissen Sie, wie man ein set in Java erstellt und wie man seine Methoden verwendet.
Arbeiten mit set in Java: Hinzufügen, Entfernen und Suchen von Elementen
Ein Set in Java ist eine Sammlung, die keine doppelten Elemente enthält. Dies wird durch die Verwendung der equals() -Methode erreicht, um die Eindeutigkeit der Elemente zu bestimmen. In diesem Abschnitt werden wir die grundlegenden Operationen mit set in Java untersuchen: Hinzufügen, Entfernen und Suchen von Elementen.
Um mit set in Java zu arbeiten, wird die Set-Schnittstelle verwendet, die Teil der Java-Standardbibliothek ist. Die Hauptklassen, die die Set-Schnittstelle implementieren, umfassen HashSet, TreeSet und LinkedHashSet.
- Hinzufügen von Elementen zum Set: Verwenden Sie die add() -Methode, um ein Element zu set hinzuzufügen. Um beispielsweise ein Element zu einem HashSet hinzuzufügen, können Sie den folgenden Code verwenden:
Set set = new HashSet<>();set.add("элемент 1");set.add("элемент 2");
- Elemente aus set entfernen: Verwenden Sie die remove() -Methode, um ein Element aus set zu entfernen. Um beispielsweise ein Element aus einem HashSet zu entfernen, können Sie den folgenden Code verwenden:
Set set = new HashSet<>();set.add("элемент 1");set.remove("элемент 1");
- Elemente in set suchen: Sie können die contains() -Methode verwenden, um nach einem Element in set zu suchen. Es gibt true zurück, wenn das Element gefunden wird, und andernfalls false. Um beispielsweise zu überprüfen, ob ein Element in einem HashSet vorhanden ist, können Sie den folgenden Code verwenden:
Set set = new HashSet<>();set.add("элемент 1");boolean contains = set.contains("элемент 1");// contains будет равно true
Sie können auch die size() -Methode verwenden, um die Anzahl der Elemente in einem set abzurufen. Zum Beispiel:
Set set = new HashSet<>();set.add("элемент 1");set.add("элемент 2");int size = set.size();// size будет равно 2
Dies sind grundlegende Operationen, die mit set in Java ausgeführt werden können. Wenn Sie sie kennen, können Sie effizient mit Datensammlungen in Ihren Java-Anwendungen arbeiten.