Java NavigableMap-Schnittstelle

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

Die NavigableMapOberfläche des Java-Sammlungsframeworks bietet die Funktionen zum Navigieren zwischen den Karteneinträgen.

Es wird als eine Art SortedMap betrachtet.

Klasse, die NavigableMap implementiert

Da NavigableMapes sich um eine Schnittstelle handelt, können wir daraus keine Objekte erstellen.

Um die Funktionen der NavigableMapSchnittstelle nutzen zu können, müssen wir TreeMapdie implementierte Klasse verwenden NavigableMap.

Wie benutze ich NavigableMap?

In Java müssen wir das java.util.NavigableMapzu verwendende Paket importieren NavigableMap. Sobald wir das Paket importiert haben, können wir wie folgt eine navigierbare Karte erstellen.

 // NavigableMap implementation by TreeMap class NavigableMap numbers = new TreeMap(); 

Im obigen Code haben wir eine navigierbare Karte mit den Namen der TreeMapKlassen erstellt.

Hier,

  • Schlüssel - eine eindeutige Kennung, mit der jedes Element (Wert) in einer Karte zugeordnet wird
  • Wert - Elemente, die durch Schlüssel in einer Karte verknüpft sind

Methoden von NavigableMap

Das NavigableMapwird als eine Art von betrachtet SortedMap. Es liegt daran, dass NavigableMapdie SortedMapSchnittstelle erweitert wird.

Daher sind alle SortedMapMethoden auch in verfügbar NavigableMap. Um zu erfahren, wie diese Methoden definiert sind SortedMap, besuchen Sie Java SortedMap.

Jedoch einige der Methoden von SortedMap( headMap(), tailMap(), und subMap()) definiert unterschiedlich NavigableMap.

Mal sehen, wie diese Methoden in definiert sind NavigableMap.

headMap (key, booleanValue)

Die headMap()Methode gibt alle Einträge einer navigierbaren Karte zurück, die allen diesen Schlüsseln vor dem angegebenen Schlüssel zugeordnet ist (der als Argument übergeben wird).

Der booleanValue ist ein optionaler Parameter. Der Standardwert ist false.

Wenn trueals booleanValue übergeben wird, gibt die Methode alle Einträge zurück, die allen diesen Schlüsseln vor dem angegebenen Schlüssel zugeordnet sind, einschließlich des Eintrags, der dem angegebenen Schlüssel zugeordnet ist.

tailMap (key, booleanValue)

Die tailMap()Methode gibt alle Einträge einer navigierbaren Karte zurück, die allen diesen Schlüsseln nach dem angegebenen Schlüssel (der als Argument übergeben wird) zugeordnet sind, einschließlich des Eintrags, der dem angegebenen Schlüssel zugeordnet ist.

Der booleanValue ist ein optionaler Parameter. Der Standardwert ist true.

Wenn falseals booleanValue übergeben wird, gibt die Methode alle Einträge zurück, die diesen Schlüsseln nach dem angegebenen Schlüssel zugeordnet sind, ohne den Eintrag anzugeben, der dem angegebenen Schlüssel zugeordnet ist.

Unterkarte (k1, bv1, k2, bv2)

Die subMap()Methode gibt alle Einträge zurück, die Schlüsseln zwischen k1 und k2 zugeordnet sind, einschließlich des Eintrags, der k1 zugeordnet ist.

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

Wenn falseals bv1 übergeben wird, gibt die Methode alle Einträge zurück, die den Schlüsseln zwischen k1 und k2 zugeordnet sind, ohne den mit k1 verknüpften Eintrag einzuschließen.

Wenn trueals bv2 übergeben wird, gibt die Methode alle Einträge zurück, die Schlüsseln zwischen k1 und k2 zugeordnet sind, einschließlich des Eintrags, der k1 zugeordnet ist.

Andere Methoden

Das NavigableMapbietet verschiedene Methoden, mit denen die Einträge von Karten gefunden werden können.

  • descendingMap () - kehrt die Reihenfolge der Einträge in einer Karte um
  • descendingKeyMap () - kehrt die Reihenfolge der Schlüssel in einer Karte um
  • lidEntry () - gibt einen Eintrag mit dem niedrigsten Schlüssel unter allen Einträgen zurück, deren Schlüssel größer oder gleich dem angegebenen Schlüssel sind
  • lidKey () - gibt den niedrigsten Schlüssel unter den Schlüsseln zurück, die größer oder gleich dem angegebenen Schlüssel sind
  • floorEntry () - gibt einen Eintrag mit dem höchsten Schlüssel unter allen Einträgen zurück, deren Schlüssel kleiner oder gleich dem angegebenen Schlüssel sind
  • floorKey () - gibt den höchsten Schlüssel unter den Schlüsseln zurück, die kleiner oder gleich dem angegebenen Schlüssel sind
  • highEntry () - gibt einen Eintrag mit dem niedrigsten Schlüssel unter allen Einträgen zurück, deren Schlüssel größer als der angegebene Schlüssel sind
  • highKey () - gibt den niedrigsten Schlüssel unter den Schlüsseln zurück, die größer als der angegebene Schlüssel sind
  • lowerEntry () - gibt einen Eintrag mit dem höchsten Schlüssel unter allen Einträgen zurück, deren Schlüssel kleiner als der angegebene Schlüssel sind
  • lowerKey () - gibt den höchsten Schlüssel unter den Schlüsseln zurück, die kleiner als der angegebene Schlüssel sind
  • firstEntry () - gibt den ersten Eintrag (den Eintrag mit dem niedrigsten Schlüssel) der Karte zurück
  • lastEntry () - gibt den letzten Eintrag (den Eintrag mit dem höchsten Schlüssel) der Karte zurück
  • pollFirstEntry () - gibt den ersten Eintrag der Karte zurück und entfernt ihn
  • pollLastEntry () - gibt den letzten Eintrag der Karte zurück und entfernt ihn

Weitere Informationen finden Sie unter Java NavigableMap (offizielle Java-Dokumentation).

Implementierung von NavigableMap in der TreeMap-Klasse

 import java.util.NavigableMap; import java.util.TreeMap; class Main ( public static void main(String() args) ( // Creating NavigableMap using TreeMap NavigableMap numbers = new TreeMap(); // Insert elements to map numbers.put("Two", 2); numbers.put("One", 1); numbers.put("Three", 3); System.out.println("NavigableMap: " + numbers); // Access the first entry of the map System.out.println("First Entry: " + numbers.firstEntry()); // Access the last entry of the map System.out.println("Last Entry: " + numbers.lastEntry()); // Remove the first entry from the map System.out.println("Removed First Entry: " + numbers.pollFirstEntry()); // Remove the last entry from the map System.out.println("Removed Last Entry: " + numbers.pollLastEntry()); ) ) 

Ausgabe

 NavigableMap: (Eins = 1, Drei = 3, Zwei = 2) Erster Eintrag: Eins = 1 Letzter Eintrag: Zwei = 2 Erster Eintrag entfernt: Eins = 1 Letzter Eintrag entfernt: Zwei = 2 

Weitere TreeMapInformationen finden Sie unter Java TreeMap.

Nachdem wir die NavigableMapSchnittstelle kennen, werden wir sie TreeMapim nächsten Tutorial anhand der Klasse im Detail kennenlernen.

Interessante Beiträge...