Ebben az oktatóanyagban egy példa segítségével megismerhetjük a Java NavigableMap felületet és annak módszereit.
A NavigableMap
Java gyűjtemények keretrendszere biztosítja a térképbejegyzések között való navigálás lehetőségeit.
A SortedMap egyik típusának számít.
Osztály, amely megvalósítja a NavigableMap programot
Mivel NavigableMap
ez egy felület, nem hozhatunk létre belőle objektumokat.
Az NavigableMap
interfész funkcióinak használatához az TreeMap
osztályt kell használnunk, amely megvalósítja NavigableMap
.
Hogyan kell használni a NavigableMap programot?
A Java-ban importálnunk kell a java.util.NavigableMap
csomagot NavigableMap
. A csomag importálása után a következőképpen készíthetünk navigálható térképet.
// NavigableMap implementation by TreeMap class NavigableMap numbers = new TreeMap();
A fenti kódban létrehoztunk egy navigálható térképet, amelynek neve az TreeMap
osztály száma volt .
Itt,
- Kulcs - egyedi azonosító, amelyet a térkép minden elemének (értékének) társításához használnak
- Érték - kulcsok által társított elemek a térképen
A NavigableMap módszerei
A NavigableMap
típus a SortedMap
. Ez azért van, mert NavigableMap
kiterjeszti az SortedMap
interfészt.
Ezért minden SortedMap
módszerek is rendelkezésre állnak NavigableMap
. Ha meg szeretné tudni, hogyan definiálják ezeket a módszereket SortedMap
, látogasson el a Java SortedMap oldalra.
Azonban, egyes módszerek a SortedMap
( headMap()
, tailMap()
, és a subMap()
) eltérően is határozzák NavigableMap
.
Lássuk, hogyan definiálják ezeket a módszereket NavigableMap
.
headMap (kulcs, logikai érték)
A headMap()
metódus visszaadja az összes kulcshoz társított navigálható térkép összes bejegyzését a megadott kulcs előtt (amelyet argumentumként adnak át).
A booleanValue opcionális paraméter. Alapértelmezett értéke false
.
Ha true
egy booleanValue néven van megadva, akkor a metódus a megadott kulcs előtt adja vissza az összes kulcshoz társított összes bejegyzést, beleértve a megadott kulccsal társított bejegyzést is.
tailMap (kulcs, logikai érték)
A tailMap()
metódus az adott kulcsokhoz társított navigálható térkép összes bejegyzését a megadott kulcs után adja vissza (amelyet argumentumként adnak át), beleértve a megadott kulcshoz társított bejegyzést is.
A booleanValue opcionális paraméter. Alapértelmezett értéke true
.
Ha false
egy booleanValue néven van megadva, akkor a metódus a megadott kulcs után adja vissza az összes kulcshoz társított bejegyzést, a megadott kulcshoz társított bejegyzés nélkül.
subMap (k1, bv1, k2, bv2)
A subMap()
metódus visszaadja a k1 és k2 közötti kulcsokhoz tartozó összes bejegyzést, beleértve a k1-hez társított bejegyzést is.
A bv1 és a bv2 opcionális paraméter. A bv1 alapértelmezett értéke igaz, a bv2 alapértelmezett értéke pedig false
.
Ha false
a bv1 néven van megadva, akkor a metódus a k1 és k2 közötti kulcsokhoz tartozó összes bejegyzést visszaadja, a k1-hez társított bejegyzés nélkül.
Ha true
a bv2 néven van megadva, akkor a metódus visszaadja a k1 és k2 közötti kulcsokhoz társított összes bejegyzést, beleértve a k1-hez társított bejegyzést is.
Egyéb módszerek
A NavigableMap
különféle módszereket lehet használni, hogy keresse meg a bejegyzéseket a térképeken.
- descendingMap () - megfordítja a bejegyzések sorrendjét a térképen
- descendingKeyMap () - megfordítja a kulcsok sorrendjét a térképen
- ceilingEntry () - a legalacsonyabb kulccsal rendelkező bejegyzést adja vissza azok közül a bejegyzések közül, amelyek kulcsa nagyobb vagy egyenlő a megadott kulccsal
- ceilingKey () - a legalacsonyabb kulcsot adja vissza a megadott kulcsnál nagyobb vagy azzal egyenlő kulcsok közül
- floorEntry () - a legmagasabb kulccsal rendelkező bejegyzést adja vissza azok közül a bejegyzések közül, amelyek kulcsa kisebb vagy egyenlő a megadott kulccsal
- floorKey () - a legmagasabb kulcsot adja vissza a megadott kulcsnál kisebb vagy azzal megegyező kulcsok közül
- magasabbEntry () - a legalacsonyabb kulccsal rendelkező bejegyzést adja vissza azok közül a bejegyzések közül, amelyek kulcsa nagyobb, mint a megadott kulcs
- magasabbKey () - a legalacsonyabb kulcsot adja vissza azok közül a kulcsok közül, amelyek nagyobbak, mint a megadott kulcs
- lowerEntry () - a legmagasabb kulccsal rendelkező bejegyzést adja vissza azok közül a bejegyzések közül, amelyek kulcsa kisebb, mint a megadott kulcs
- lowerKey () - a legmagasabb kulcsot adja vissza azok közül a kulcsok közül, amelyek kisebbek, mint a megadott kulcs
- firstEntry () - a térkép első bejegyzését adja vissza (a legalacsonyabb kulccsal rendelkező bejegyzést)
- lastEntry () - a térkép utolsó bejegyzését adja vissza (a legmagasabb kulccsal rendelkező bejegyzést)
- pollFirstEntry () - visszatér és eltávolítja a térkép első bejegyzését
- pollLastEntry () - visszatér és eltávolítja a térkép utolsó bejegyzését
További információkért látogasson el a Java NavigableMap (hivatalos Java dokumentáció) oldalra.
A NavigableMap megvalósítása a TreeMap osztályban
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()); ) )
Kimenet
Navigálható térkép: (Egy = 1, Három = 3, Kettő = 2) Első bejegyzés: Egy = 1 Utolsó bejegyzés: Kettő = 2 Eltávolított első bejegyzés: Egy = 1 Eltávolított utolsó bejegyzés: Kettő = 2
További információkért TreeMap
látogasson el a Java TreeMap oldalra.
Most már tudunk a NavigableMap
felületről, TreeMap
a következő oktatóanyagban részletesen megismerhetjük az osztály használatát .