În acest tutorial, vom afla despre interfața Java NavigableMap și metodele sale cu ajutorul unui exemplu.
NavigableMap
Interfața cadrului colecțiilor Java oferă caracteristici pentru a naviga printre intrările hartă.
Este considerat ca un tip de SortedMap.
Clasă care implementează NavigableMap
Deoarece NavigableMap
este o interfață, nu putem crea obiecte din ea.
Pentru a utiliza funcționalitățile NavigableMap
interfeței, trebuie să folosim TreeMap
clasa care implementează NavigableMap
.
Cum se folosește NavigableMap?
În Java, trebuie să importăm java.util.NavigableMap
pachetul de utilizat NavigableMap
. Odată ce am importat pachetul, iată cum putem crea o hartă navigabilă.
// NavigableMap implementation by TreeMap class NavigableMap numbers = new TreeMap();
În codul de mai sus, am creat o hartă navigabilă numită numere ale TreeMap
clasei.
Aici,
- Cheie - un identificator unic utilizat pentru a asocia fiecare element (valoare) pe o hartă
- Valoare - elemente asociate tastelor dintr-o hartă
Metode NavigableMap
Este NavigableMap
considerat ca un tip de SortedMap
. Acest lucru se datorează faptului că NavigableMap
extinde SortedMap
interfața.
Prin urmare, toate SortedMap
metodele sunt disponibile și în NavigableMap
. Pentru a afla cum sunt definite aceste metode SortedMap
, vizitați Java SortedMap.
Cu toate acestea, unele dintre metodele de SortedMap
( headMap()
, tailMap()
și subMap()
) sunt definiți în mod diferit în NavigableMap
.
Să vedem cum sunt definite aceste metode NavigableMap
.
headMap (cheie, Valoare booleană)
În headMap()
metoda returneaza toate intrările dintr - o hartă navigabilă asociată cu toate acele chei înainte de cheia specificată (care este trecut ca un argument).
Valoarea booleană este un parametru opțional. Valoarea sa implicită este false
.
Dacă true
este trecut ca valoare booleană, metoda returnează toate intrările asociate cu toate acele chei înainte de cheia specificată, inclusiv intrarea asociată cu cheia specificată.
tailMap (cheie, Valoare booleană)
În tailMap()
metoda returneaza toate intrările dintr - o hartă navigabilă asociată cu toate acele chei după cheia specificată (care este trecut ca un argument) , inclusiv intrarea asociată cu cheia specificată.
Valoarea booleană este un parametru opțional. Valoarea sa implicită este true
.
Dacă false
este trecut ca valoare booleană, metoda returnează toate intrările asociate acelor chei după cheia specificată, fără a include intrarea asociată cu cheia specificată.
subMap (k1, bv1, k2, bv2)
În subMap()
metoda returneaza toate intrările asociate cu cheile între k2 și k1 , inclusiv intrarea asociată cu k1.
Bv1 și bv2 sunt parametri opționali. Valoarea implicită a bv1 este adevărată, iar valoarea implicită a bv2 este false
.
Dacă false
este trecut ca bv1, metoda returnează toate intrările asociate cu tastele între k1 și k2, fără a include intrarea asociată cu k1.
Dacă true
este trecut ca bv2, metoda returnează toate intrările asociate cu tastele între k1 și k2, inclusiv intrarea asociată cu k1.
Alte metode
NavigableMap
Oferă diverse metode care pot fi folosite pentru a localiza intrările de hărți.
- descendingMap () - inversează ordinea intrărilor într-o hartă
- descendingKeyMap () - inversează ordinea tastelor dintr-o hartă
- ceilingEntry () - returnează o intrare cu cea mai mică cheie dintre toate acele intrări ale căror taste sunt mai mari sau egale cu cheia specificată
- ceilingKey () - returnează cea mai mică cheie dintre acele taste care sunt mai mari sau egale cu cheia specificată
- floorEntry () - returnează o intrare cu cea mai mare cheie dintre toate acele intrări ale căror chei sunt mai mici sau egale cu cheia specificată
- floorKey () - returnează cea mai înaltă cheie dintre acele taste care sunt mai mici sau egale cu cheia specificată
- higherEntry () - returnează o intrare cu cea mai mică cheie dintre toate acele intrări ale căror chei sunt mai mari decât cheia specificată
- higherKey () - returnează cea mai mică cheie dintre acele taste care sunt mai mari decât cheia specificată
- lowerEntry () - returnează o intrare cu cea mai mare cheie dintre toate acele intrări ale căror chei sunt mai mici decât cheia specificată
- lowerKey () - returnează cea mai înaltă cheie dintre acele taste care sunt mai mici decât cheia specificată
- firstEntry () - returnează prima intrare (intrarea cu cea mai mică tastă) a hărții
- lastEntry () - returnează ultima intrare (intrarea cu cea mai înaltă cheie) a hărții
- pollFirstEntry () - returnează și elimină prima intrare a hărții
- pollLastEntry () - returnează și elimină ultima intrare a hărții
Pentru a afla mai multe, vizitați Java NavigableMap (documentație oficială Java).
Implementarea NavigableMap în clasa TreeMap
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()); ) )
Ieșire
NavigableMap: (One = 1, Three = 3, Two = 2) Prima intrare: One = 1 Ultima intrare: Two = 2 Eliminată prima intrare: One = 1 Eliminată ultima intrare: Two = 2
Pentru a afla mai multe despre TreeMap
, vizitați Java TreeMap.
Acum știm despre NavigableMap
interfață, vom afla despre implementarea acesteia folosind TreeMap
clasa în detaliu în următorul tutorial.