Javas TreeSet ist ein geordneter Satz, der auf der Grundlage rot-schwarzer Bäume implementiert wird. Seine Funktion besteht darin, dass Elemente nach Größe sortiert werden und Elemente schnell hinzugefügt, gelöscht und durchsucht werden können. In diesem Artikel wird erläutert, wie Sie die TreeSet-Funktion in Java verwenden, um geordnete Mengenoperationen auszuführen, damit sie besser in der tatsächlichen Programmierung angewendet werden kann.
1. Grundfunktionen von TreeSet
1. Erstellen Sie ein TreeSet-Objekt.
Um TreeSet verwenden zu können, müssen Sie zuerst ein TreeSet-Objekt erstellen. Sie können den parameterlosen Konstruktor verwenden, um ein leeres TreeSet zu erstellen, oder Sie können einen Comparator angeben, um die Sortierung beim Erstellen des TreeSet-Objekts anzupassen.
Beispielcode:
TreeSet<Integer> set = new TreeSet<>(); TreeSet<String> set2 = new TreeSet<>(new Comparator<String>() { @Override public int compare(String o1, String o2) { // 自定义排序规则 return o1.compareToIgnoreCase(o2); } });
2. Elemente hinzufügen
Elemente zu TreeSet hinzufügen über die Methode add(). TreeSet sortiert Elemente automatisch nach ihrer Größe und dieselben Elemente werden nur einmal gespeichert.
Beispielcode:
set.add(3); set.add(1); set.add(2); set.add(3); // 结果为[1, 2, 3] System.out.println(set);
3. Elemente löschen
Sie können die Methode „remove()“ verwenden, um Elemente in einem TreeSet zu löschen.
Beispielcode:
set.remove(3); // 结果为[1, 2] System.out.println(set);
4. Bestimmen Sie, ob ein Element vorhanden ist
Sie können die Methode „contains()“ verwenden, um festzustellen, ob ein Element im TreeSet vorhanden ist.
Beispielcode:
boolean contains = set.contains(2); // 结果为true System.out.println(contains);
5. Ermitteln Sie die Anzahl der Elemente
Sie können die Methode size() verwenden, um die Anzahl der Elemente im TreeSet abzurufen.
Beispielcode:
int size = set.size(); // 结果为2 System.out.println(size);
6. Elemente durchqueren
Sie können die for-Schleife oder die forEach()-Methode verwenden, um die Elemente im TreeSet zu durchqueren.
Beispielcode:
for (Integer i : set) { System.out.print(i + " "); } System.out.println(); set.forEach(System.out::println);
Ausgabeergebnis:
1 2 1 2
2. Erweiterte Operationen von TreeSet
1. Holen Sie sich das erste Element und das letzte Element
Sie können die Methoden first() und last() verwenden, um das dritte zu erhalten Element im TreeSet ein Element und das letzte Element.
Beispielcode:
Integer first = set.first(); Integer last = set.last(); // 结果为1 2 System.out.println(first + " " + last);
2. Holen Sie sich eine Teilmenge
Sie können die subSet()-Methode verwenden, um eine Teilmenge von TreeSet abzurufen, die Elemente von fromElement (einschließlich) bis toElement (exklusiv) enthält. Wenn fromElement nicht angegeben ist, bedeutet dies, dass mit dem ersten Element im TreeSet begonnen wird.
Beispielcode:
TreeSet<Integer> subSet = (TreeSet<Integer>) set.subSet(1, 2); // 结果为[1] System.out.println(subSet); TreeSet<String> subSet2 = (TreeSet<String>) set2.subSet("A", "c"); // 结果为[b, C] System.out.println(subSet2);
Es ist zu beachten, dass sich bei einer Änderung der Teilmenge auch das ursprüngliche TreeSet ändert.
3. Erhalten Sie eine Teilmenge der Head- oder Tail-Elemente
Sie können die headSet()-Methode und die tailSet()-Methode verwenden, um eine Teilmenge der Head- (außer toElement) oder Tail-Elemente (einschließlich fromElement) des TreeSets zu erhalten.
Beispielcode:
TreeSet<Integer> headSet = (TreeSet<Integer>) set.headSet(2); // 结果为[1] System.out.println(headSet); TreeSet<String> tailSet = (TreeSet<String>) set2.tailSet("b"); // 结果为[b, C] System.out.println(tailSet);
Beachten Sie außerdem, dass sich auch das ursprüngliche TreeSet ändert, wenn sich die Teilmenge ändert.
4. Elemente abrufen, die kleiner oder größer als das angegebene Element sind.
Sie können die Methode „lower()“, „floor()“, „higher()“ und „floor()“ verwenden, um die Elemente abzurufen, die kleiner oder größer sind als das angegebene Element.
Beispielcode:
Integer lower = set.lower(2); Integer floor = set.floor(2); Integer higher = set.higher(1); Integer ceiling = set.ceiling(1); // 结果为1 2 2 1 System.out.println(lower + " " + floor + " " + higher + " " + ceiling);
Es ist zu beachten, dass:
3. Zusammenfassung
Dieser Artikel stellt die grundlegenden Operationen und erweiterten Operationen der TreeSet-Funktion in Java vor. Sie können die entsprechende Betriebsmethode entsprechend den tatsächlichen Anforderungen auswählen, um geordnete Sammelvorgänge durchzuführen. Es ist zu beachten, dass sich bei Verwendung der subSet()-Methode, der headSet()-Methode und der tailSet()-Methode bei einer Änderung der Teilmenge auch das ursprüngliche TreeSet ändert. Sie müssen dies daher berücksichtigen.
Das obige ist der detaillierte Inhalt vonSo verwenden Sie die TreeSet-Funktion in Java für geordnete Mengenoperationen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!