Java NavigableSet-Schnittstelle

In diesem Tutorial lernen wir anhand eines Beispiels die Java NavigableSet-Oberfläche und ihre Methoden kennen.

Die NavigableSetOberfläche des Java Collections-Frameworks bietet die Funktionen zum Navigieren zwischen den festgelegten Elementen.

Es wird als eine Art SortedSet betrachtet.

Klasse, die NavigableSet implementiert

Um die Funktionen der NavigableSetSchnittstelle nutzen zu können, müssen wir TreeSetdie implementierte Klasse verwenden NavigableSet.

Wie benutze ich NavigableSet?

In Java müssen wir das java.util.NavigableSetzu verwendende Paket importieren NavigableSet. Sobald wir das Paket importiert haben, können wir folgende navigierbare Mengen erstellen.

 // SortedSet implementation by TreeSet class NavigableSet numbers = new TreeSet(); 

Hier haben wir eine navigierbare Menge mit den Nummern der TreeSetKlasse erstellt.

Methoden von NavigableSet

Das NavigableSetwird als eine Art von betrachtet SortedSet. Es liegt daran, dass NavigableSetdie SortedSetSchnittstelle erweitert wird.

Daher sind alle SortedSet-Methoden auch in NavigableSet verfügbar. Informationen zu diesen Methoden finden Sie unter Java SortedSet.

Einige der Methoden von SortedSet( headSet(), tailSet()und subSet()) sind jedoch in unterschiedlich definiert NavigableSet.

Mal sehen, wie diese Methoden in definiert sind NavigableSet.

headSet (Element, booleanValue)

Die headSet()Methode gibt alle Elemente einer navigierbaren Menge vor dem angegebenen Element zurück (das als Argument übergeben wird).

Der Parameter booleanValue ist optional. Der Standardwert ist false.

Wenn trueals booleanValue übergeben wird, gibt die Methode alle Elemente vor dem angegebenen Element einschließlich des angegebenen Elements zurück.

tailSet (Element, booleanValue)

Die tailSet()Methode gibt alle Elemente einer navigierbaren Menge nach dem angegebenen Element (das als Argument übergeben wird) einschließlich des angegebenen Elements zurück.

Der Parameter booleanValue ist optional. Der Standardwert ist true.

Wenn falseals booleanValue übergeben wird, gibt die Methode alle Elemente nach dem angegebenen Element zurück, ohne das angegebene Element einzuschließen.

Teilmenge (e1, bv1, e2, bv2)

Die subSet()Methode gibt alle Elemente zwischen e1 und e2 einschließlich e1 zurück.

Bv1 und bv2 sind optionale Parameter. Der Standardwert von bv1 ist trueund der Standardwert von bv2 ist false.

Wenn falseals bv1 übergeben wird, gibt die Methode alle Elemente zwischen e1 und e2 ohne Einbeziehung zurück e1.

Wenn trueals bv2 übergeben wird, gibt die Methode alle Elemente zwischen e1 und e2 zurück, einschließlich e1.

Methoden zur Navigation

Das NavigableSetbietet verschiedene Methoden, mit denen Sie über die Elemente navigieren können.

  • descendingSet () - kehrt die Reihenfolge der Elemente in einer Menge um
  • descendingIterator () - Gibt einen Iterator zurück, mit dem eine Menge in umgekehrter Reihenfolge durchlaufen werden kann
  • Decke () - gibt das niedrigste Element unter den Elementen zurück, die größer oder gleich dem angegebenen Element sind
  • floor () - gibt das größte Element unter den Elementen zurück, die kleiner oder gleich dem angegebenen Element sind
  • high () - gibt das niedrigste Element unter den Elementen zurück, die größer als das angegebene Element sind
  • lower () - gibt das größte Element unter den Elementen zurück, die kleiner als das angegebene Element sind
  • pollFirst () - gibt das erste Element zurück und entfernt es aus der Menge
  • pollLast () - gibt das letzte Element zurück und entfernt es aus der Menge

Weitere NavigableSetInformationen zu finden Sie unter Java NavigableSet (offizielle Java-Dokumentation).

Implementierung von NavigableSet in der TreeSet-Klasse

 import java.util.NavigableSet; import java.util.TreeSet; class Main ( public static void main(String() args) ( // Creating NavigableSet using the TreeSet NavigableSet numbers = new TreeSet(); // Insert elements to the set numbers.add(1); numbers.add(2); numbers.add(3); System.out.println("NavigableSet: " + numbers); // Access the first element int firstElement = numbers.first(); System.out.println("First Number: " + firstElement); // Access the last element int lastElement = numbers.last(); System.out.println("Last Element: " + lastElement); // Remove the first element int number1 = numbers.pollFirst(); System.out.println("Removed First Element: " + number1); // Remove the last element int number2 = numbers.pollLast(); System.out.println("Removed Last Element: " + number2); ) ) 

Ausgabe

 NavigableSet: (1, 2, 3) Erstes Element: 1 Letztes Element: 3 Erstes Element entfernt: 1 Letztes Element entfernt: 3 

Weitere TreeSetInformationen finden Sie unter Java TreeSet.

Nachdem wir die NavigableSetSchnittstelle kennen, lernen wir ihre Implementierung mithilfe der TreeSetKlasse kennen.

Interessante Beiträge...