Java NavigableMap-Schnittstelle
Java NavigableMap Interface
In diesem Tutorial lernen wir das Java NavigableMap Interface und seine Methoden anhand eines Beispiels kennen.
Der NavigableMap Schnittstelle des Java Collections Framework bietet die Funktionen zum Navigieren zwischen den Karteneinträgen.
Es wird als eine Art SortedMap angesehen.
Klasse, die NavigableMap implementiert
Seit NavigableMap eine Schnittstelle ist, können wir daraus keine Objekte erstellen.
Um die Funktionalitäten des NavigableMap zu nutzen Schnittstelle, müssen wir den TreeMap verwenden Klasse, die NavigableMap implementiert .

Wie verwende ich NavigableMap?
In Java müssen wir den java.util.NavigableMap importieren Paket, um NavigableMap zu verwenden . Sobald wir das Paket importiert haben, können wir wie folgt eine navigierbare Karte erstellen.
// NavigableMap implementation by TreeMap class
NavigableMap<Key, Value> numbers = new TreeMap<>();
Im obigen Code haben wir eine navigierbare Karte mit dem Namen numbers erstellt der TreeMap Klasse.
Hier,
- Schlüssel - eine eindeutige Kennung, die verwendet wird, um jedes Element (Wert) in einer Zuordnung zuzuordnen
- Wert - Elemente, die durch Schlüssel in einer Karte verknüpft sind
Methoden von NavigableMap
Die NavigableMap wird als eine Art von SortedMap betrachtet . Weil NavigableMap erweitert den SortedMap Schnittstelle.
Daher alle SortedMap Methoden sind auch in NavigableMap verfügbar . Um zu erfahren, wie diese Methoden in SortedMap definiert sind , besuchen Sie Java SortedMap.
Einige der Methoden von SortedMap (headMap() , tailMap() , und subMap() ) sind in NavigableMap anders definiert .
Sehen wir uns an, wie diese Methoden in NavigableMap definiert sind .
headMap(Schlüssel, boolescher Wert)
Die headMap() -Methode gibt alle Einträge einer navigierbaren Karte zurück, die mit all diesen Schlüsseln vor dem angegebenen Schlüssel verknüpft sind (das als Argument übergeben wird).
Der boolesche Wert ist ein optionaler Parameter. Sein Standardwert ist false .
Wenn true wird als booleanValue übergeben , gibt die Methode alle Einträge zurück, die all diesen Schlüsseln vor dem angegebenen key zugeordnet sind , einschließlich des Eintrags, der dem angegebenen Schlüssel zugeordnet ist .
tailMap(Schlüssel, boolescher Wert)
Die tailMap() -Methode gibt alle Einträge einer navigierbaren Karte zurück, die mit all diesen Schlüsseln nach dem angegebenen key verknüpft sind (der als Argument übergeben wird) einschließlich des Eintrags, der dem angegebenen Schlüssel zugeordnet ist .
Der boolesche Wert ist ein optionaler Parameter. Sein Standardwert ist true .
Wenn false wird als booleanValue übergeben , gibt die Methode alle Einträge zurück, die diesen Schlüsseln nach dem angegebenen key zugeordnet sind , ohne den mit dem angegebenen key verknüpften Eintrag einzuschließen .
subMap(k1, bv1, k2, bv2)
Der subMap() -Methode gibt alle Einträge zurück, die Schlüsseln zwischen k1 zugeordnet sind und k2 einschließlich des mit k1 verknüpften Eintrags .
Die bv1 und bv2 sind optionale Parameter. Der Standardwert von bv1 ist wahr und der Standardwert von bv2 ist false .
Wenn false wird als bv1 übergeben , gibt die Methode alle Einträge zurück, die Schlüsseln zwischen k1 zugeordnet sind und k2 , ohne den mit k1 verknüpften Eintrag einzuschließen .
Wenn true wird als bv2 übergeben , gibt die Methode alle Einträge zurück, die Schlüsseln zwischen k1 zugeordnet sind und k2 , einschließlich des mit k1 verknüpften Eintrags .
Andere Methoden
Der NavigableMap stellt verschiedene Methoden bereit, die verwendet werden können, um die Einträge von Karten zu finden.
- descendingMap() - Reihenfolge der Einträge in einer Karte umkehren
- descendingKeyMap() - Kehrt die Reihenfolge der Schlüssel in einer Karte um
- CeilingEntry() - 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
- ceilingKey() - 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
- höhererEintrag() - 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
- higherKey() - gibt den niedrigsten Schlüssel unter den Schlüsseln zurück, die größer als der angegebene Schlüssel sind
- untererEintrag() - 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
- ersterEintrag() - gibt den ersten Eintrag (den Eintrag mit dem niedrigsten Schlüssel) der Karte zurück
- letzterEintrag() - 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
Um mehr zu erfahren, besuchen Sie 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<String, Integer> 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: {One=1, Three=3, Two=2}
First Entry: One=1
Last Entry: Two=2
Removed First Entry: One=1
Removed Last Entry: Two=2
Um mehr über TreeMap zu erfahren , besuchen Sie Java TreeMap.
Jetzt kennen wir den NavigableMap -Schnittstelle, lernen wir ihre Implementierung mit dem TreeMap kennen Klasse im Detail im nächsten Tutorial.
Java
- C#-Schnittstelle
- Java-Operatoren
- Java-Schnittstelle
- Java-Versuch-mit-Ressourcen
- Java NavigableSet-Schnittstelle
- Java-Lambda-Ausdrücke
- Schnittstelle vs. abstrakte Klasse in Java:Was ist der Unterschied?
- Java - Schnittstellen
- Java 9 - Private Schnittstellenmethoden
- Anmelden in Java:Wichtige Tipps, die Sie berücksichtigen sollten