Java NavigableMap felület

Ebben az oktatóanyagban egy példa segítségével megismerhetjük a Java NavigableMap felületet és annak módszereit.

A NavigableMapJava 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 NavigableMapez egy felület, nem hozhatunk létre belőle objektumokat.

Az NavigableMapinterfész funkcióinak használatához az TreeMaposztá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.NavigableMapcsomagot 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 TreeMaposztá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 NavigableMaptípus a SortedMap. Ez azért van, mert NavigableMapkiterjeszti az SortedMapinterfészt.

Ezért minden SortedMapmó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 trueegy 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 falseegy 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 falsea 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 truea 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 NavigableMapkü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 TreeMaplátogasson el a Java TreeMap oldalra.

Most már tudunk a NavigableMapfelületről, TreeMapa következő oktatóanyagban részletesen megismerhetjük az osztály használatát .

érdekes cikkek...