U ovom uputstvu naučit ćemo o sučelju Java NavigableMap i njegovim metodama uz pomoć primjera.
NavigableMap
Sučelje Java zbirki okvir pruža mogućnosti za kretanje među unosa karti.
Smatra se vrstom SortedMap.
Klasa koja implementira NavigableMap
Budući da NavigableMap
je sučelje, od njega ne možemo stvarati objekte.
Da bismo koristili funkcionalnosti NavigableMap
sučelja, moramo koristiti TreeMap
klasu koja implementira NavigableMap
.
Kako koristiti NavigableMap?
U Javi moramo uvesti java.util.NavigableMap
paket za upotrebu NavigableMap
. Nakon što uvozimo paket, evo kako možemo stvoriti navigacijsku kartu.
// NavigableMap implementation by TreeMap class NavigableMap numbers = new TreeMap();
U gornjem kodu stvorili smo plovidbenu mapu s brojevima TreeMap
razreda.
Ovdje,
- Ključ - jedinstveni identifikator koji se koristi za povezivanje svakog elementa (vrijednosti) na karti
- Vrijednost - elementi pridruženi ključevima na karti
Metode NavigableMap
The NavigableMap
smatra se vrstom SortedMap
. To je zato što NavigableMap
proširuje SortedMap
sučelje.
Stoga su sve SortedMap
metode dostupne i u NavigableMap
. Da biste saznali kako su definirane ove metode SortedMap
, posjetite Java SortedMap.
Međutim, neke od metoda SortedMap
( headMap()
, tailMap()
, i subMap()
) su drugačije definirano u NavigableMap
.
Pogledajmo kako su ove metode definirane u NavigableMap
.
headMap (ključ, booleanValue)
The headMap()
metoda vraća sve unose na plovnom karte povezane sa svim tim ključevima prije navedenog ključa (koji je prošao kao argument).
BooleanValue je neobavezni parametar. Njegova je zadana vrijednost false
.
Ako true
se proslijedi kao booleanValue, metoda vraća sve unose povezane sa svim tim ključevima prije navedenog ključa, uključujući unos povezan s navedenim ključem.
tailMap (ključ, booleanValue)
The tailMap()
metoda vraća sve unose na plovnom karte povezane sa svim onim tipkama nakon određenog ključa (koji je prošao kao argument), uključujući stupanja povezane s određenom ključu.
BooleanValue je neobavezni parametar. Njegova je zadana vrijednost true
.
Ako false
se proslijedi kao booleanValue, metoda vraća sve unose povezane s tim ključevima nakon navedenog ključa, bez uključivanja unosa povezanog s navedenim ključem.
podkarta (k1, bv1, k2, bv2)
The subMap()
metoda vraća sve zapise povezane s ključevima između K1 i K2, uključujući stupanja povezane s K1.
Bv1 i bv2 su neobavezni parametri. Zadana vrijednost bv1 je istinita, a zadana vrijednost bv2 je false
.
Ako false
se prosljedi kao bv1, metoda vraća sve unose povezane s ključevima između k1 i k2, bez uključivanja unosa povezanog s k1.
Ako true
se prosljedi kao bv2, metoda vraća sve unose povezane s ključevima između k1 i k2, uključujući unos povezan s k1.
Ostale metode
Navodi NavigableMap
različite metode koje se mogu koristiti za pronalaženje unosa na kartama.
- descendingMap () - obrnuti redoslijed unosa na karti
- descendingKeyMap () - obrće redoslijed tipki na karti
- plafonEntry () - vraća unos s najnižim ključem među svim unosima čiji su ključevi veći ili jednaki navedenom ključu
- plafonKey () - vraća najniži ključ među onim ključevima koji su veći ili jednaki navedenom ključu
- floorEntry () - vraća unos s najvišim ključem među svim unosima čiji su ključevi manji ili jednaki navedenom ključu
- floorKey () - vraća najviši ključ među onim ključevima koji su manji ili jednaki navedenom ključu
- higherEntry () - vraća unos s najnižim ključem među svim unosima čiji su ključevi veći od navedenog ključa
- higherKey () - vraća najniži ključ među onim ključevima koji su veći od navedenog ključa
- lowerEntry () - vraća unos s najvišim ključem među svim unosima čiji su ključevi manji od navedenog ključa
- lowerKey () - vraća najviši ključ među onim ključevima koji su manji od navedenog ključa
- firstEntry () - vraća prvi unos (unos s najnižim ključem) karte
- lastEntry () - vraća zadnji unos (unos s najvišim ključem) karte
- pollFirstEntry () - vraća i uklanja prvi unos karte
- pollLastEntry () - vraća i uklanja posljednji unos karte
Da biste saznali više, posjetite Java NavigableMap (službena Java dokumentacija).
Implementacija NavigableMap u klasi 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()); ) )
Izlaz
NavigableMap: (Jedan = 1, Tri = 3, Dva = 2) Prvi unos: Jedan = 1 Zadnji unos: Dva = 2 Uklonjen Prvi unos: Jedan = 1 Uklonjen zadnji unos: Dva = 2
Da biste saznali više o tome TreeMap
, posjetite Javu TreeMap.
Sada znamo za NavigableMap
sučelje, naučit ćemo o njegovoj implementaciji koristeći TreeMap
klasu detaljno u sljedećem vodiču.