Interfață Java NavigableMap

În acest tutorial, vom afla despre interfața Java NavigableMap și metodele sale cu ajutorul unui exemplu.

NavigableMapInterfaț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 NavigableMapeste o interfață, nu putem crea obiecte din ea.

Pentru a utiliza funcționalitățile NavigableMapinterfeței, trebuie să folosim TreeMapclasa care implementează NavigableMap.

Cum se folosește NavigableMap?

În Java, trebuie să importăm java.util.NavigableMappachetul 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 TreeMapclasei.

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 NavigableMapconsiderat ca un tip de SortedMap. Acest lucru se datorează faptului că NavigableMapextinde SortedMapinterfața.

Prin urmare, toate SortedMapmetodele 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ă trueeste 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ă falseeste 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ă falseeste trecut ca bv1, metoda returnează toate intrările asociate cu tastele între k1 și k2, fără a include intrarea asociată cu k1.

Dacă trueeste trecut ca bv2, metoda returnează toate intrările asociate cu tastele între k1 și k2, inclusiv intrarea asociată cu k1.

Alte metode

NavigableMapOferă 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 NavigableMapinterfață, vom afla despre implementarea acesteia folosind TreeMapclasa în detaliu în următorul tutorial.

Articole interesante...