Java NavigableMap Interface

I denna handledning lär vi oss om Java NavigableMap-gränssnittet och dess metoder med hjälp av ett exempel.

Det NavigableMapgränssnitt samlingar ramen för Java ger funktioner för att navigera bland kart poster.

Det betraktas som en typ av SortedMap.

Klass som implementerar NavigableMap

Eftersom det NavigableMapär ett gränssnitt kan vi inte skapa objekt från det.

För att kunna använda funktionerna i NavigableMapgränssnittet måste vi använda den TreeMapklass som implementeras NavigableMap.

Hur använder jag NavigableMap?

I Java måste vi importera java.util.NavigableMappaketet för att kunna använda NavigableMap. När vi väl har importerat paketet kan du skapa en navigerbar karta här.

 // NavigableMap implementation by TreeMap class NavigableMap numbers = new TreeMap(); 

I koden ovan har vi skapat en navigerbar karta med namnen på TreeMapklassen.

Här,

  • Nyckel - en unik identifierare som används för att associera varje element (värde) på en karta
  • Värde - element som är associerade med nycklar på en karta

Metoder för NavigableMap

Den NavigableMapbetraktas som en typ av SortedMap. Det beror på att NavigableMaputvidgar SortedMapgränssnittet.

Därför är alla SortedMapmetoder också tillgängliga i NavigableMap. För att lära dig hur dessa metoder definieras i SortedMap, besök Java SortedMap.

Emellertid, några av metoderna enligt SortedMap( headMap(), tailMap(), och subMap()) definieras på olika sätt i NavigableMap.

Låt oss se hur dessa metoder definieras i NavigableMap.

headMap (key, booleanValue)

De headMap()metoden returnerar alla inmatningar av en farbar karta associerad med alla dessa nycklar före den angivna nyckeln (som leds som argument).

BooleanValue är en valfri parameter. Standardvärdet är false.

Om trueskickas som en booleanVärde returnerar metoden alla poster som är associerade med alla dessa nycklar före den angivna nyckeln, inklusive den post som är associerad med den angivna nyckeln.

tailMap (key, booleanValue)

De tailMap()metoden returnerar alla inmatningar av en farbar karta associerad med alla dessa nycklar efter den angivna nyckeln (som skickas som ett argument) inklusive av ingångs associerad med den angivna nyckeln.

BooleanValue är en valfri parameter. Standardvärdet är true.

Om falseskickas som en booleanValue returnerar metoden alla poster som är associerade med dessa nycklar efter den angivna nyckeln, utan att inkludera posten som är associerad med den angivna nyckeln.

subMap (k1, bv1, k2, bv2)

De subMap()metoden returnerar alla poster i samband med nycklar mellan K1 och K2, inklusive posten i samband med K1.

Bv1 och bv2 är valfria parametrar. Standardvärdet för bv1 är sant och standardvärdet för bv2 är false.

Om falseskickas som bv1 returnerar metoden alla poster som är associerade med nycklar mellan k1 och k2, utan att inkludera posten associerad med k1.

Om trueskickas som bv2 returnerar metoden alla poster som är associerade med nycklar mellan k1 och k2, inklusive posten associerad med k1.

Andra metoder

Det NavigableMapinnehåller olika metoder som kan användas för att lokalisera posterna på kartorna.

  • descendingMap () - omvänd ordningen på posterna på en karta
  • descendingKeyMap () - vänder nyckelordningen i en karta
  • ceilingEntry () - returnerar en post med den lägsta tangenten bland alla poster vars tangenter är större än eller lika med den angivna tangenten
  • ceilingKey () - returnerar den lägsta tangenten bland de tangenter som är större än eller lika med den angivna tangenten
  • floorEntry () - returnerar en post med den högsta tangenten bland alla de poster vars nycklar är mindre än eller lika med den angivna tangenten
  • floorKey () - returnerar den högsta tangenten bland de tangenter som är mindre än eller lika med den angivna tangenten
  • higherEntry () - returnerar en post med den lägsta tangenten bland alla de poster vars tangenter är större än den angivna tangenten
  • higherKey () - returnerar den lägsta tangenten bland de tangenter som är större än den angivna tangenten
  • lowerEntry () - returnerar en post med den högsta tangenten bland alla de poster vars knappar är mindre än den angivna tangenten
  • lowerKey () - returnerar den högsta tangenten bland de tangenter som är mindre än den angivna tangenten
  • firstEntry () - returnerar den första posten (posten med den lägsta tangenten) på kartan
  • lastEntry () - returnerar den sista posten (posten med den högsta tangenten) på kartan
  • pollFirstEntry () - returnerar och tar bort den första posten på kartan
  • pollLastEntry () - returnerar och tar bort den sista posten på kartan

För att lära dig mer, besök Java NavigableMap (officiell Java-dokumentation).

Implementering av NavigableMap i TreeMap-klass

 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()); ) ) 

Produktion

 NavigableMap: (One = 1, Three = 3, Two = 2) First Entry: One = 1 Last Entry: Two = 2 Borttaget First Entry: One = 1 Borttaget Senaste inmatning: Two = 2 

För att lära dig mer om TreeMap, besök Java TreeMap.

Nu vet vi om NavigableMapgränssnittet, vi lär oss om dess implementering med hjälp av TreeMapklassen i detalj i nästa handledning.

Intressanta artiklar...