Java NavigableMap интерфейс

В този урок ще научим за интерфейса на Java NavigableMap и неговите методи с помощта на пример.

В NavigableMapинтерфейса на колекции рамките на Java предоставя функции, за да се придвижвате между записите на картата.

Счита се за вид SortedMap.

Клас, който реализира NavigableMap

Тъй като NavigableMapе интерфейс, не можем да създаваме обекти от него.

За да използваме функционалностите на NavigableMapинтерфейса, трябва да използваме TreeMapкласа, който реализира NavigableMap.

Как да използвам NavigableMap?

В Java трябва да импортираме java.util.NavigableMapпакета, който да използваме NavigableMap. След като импортираме пакета, ето как можем да създадем навигационна карта.

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

В горния код създадохме навигационна карта, наречена номера на TreeMapкласа.

Тук,

  • Ключ - уникален идентификатор, използван за свързване на всеки елемент (стойност) в карта
  • Стойност - елементи, свързани с ключове в карта

Методи на NavigableMap

The NavigableMapсе разглежда като вид SortedMap. Това е така, защото NavigableMapразширява SortedMapинтерфейса.

Следователно всички SortedMapметоди са налични и в NavigableMap. За да научите как са дефинирани тези методи SortedMap, посетете Java SortedMap.

Въпреки това, някои от методите на SortedMap( headMap(), tailMap()и subMap()) са дефинирани по различен начин в NavigableMap.

Нека да видим как тези методи са дефинирани в NavigableMap.

headMap (ключ, booleanValue)

На headMap()връща метод всички записи на плавателна карта, свързана с всички тези ключове преди определен ключ (който се предава като аргумент).

BooleanValue е незадължителен параметър. Стойността му по подразбиране е false.

Ако trueсе предаде като booleanValue, методът връща всички записи, свързани с всички тези ключове преди посочения ключ, включително записа, свързан с посочения ключ.

tailMap (ключ, booleanValue)

На tailMap()връща метод всички записи на плавателна карта, свързана с всички тези ключове след определен ключ (който се предава като аргумент), включително влизането свързан с определен ключ.

BooleanValue е незадължителен параметър. Стойността му по подразбиране е true.

Ако falseсе предаде като booleanValue, методът връща всички записи, свързани с тези ключове след посочения ключ, без да включва записа, свързан с посочения ключ.

подкарта (k1, bv1, k2, bv2)

На subMap()връща метод всички записи, свързани с ключове между k1 и k2 включително влизането свързана с k1.

Bv1 и bv2 са незадължителни параметри. Стойността по подразбиране на bv1 е вярна, а стойността по подразбиране на bv2 е false.

Ако falseсе предаде като bv1, методът връща всички записи, свързани с ключове между k1 и k2, без да включва записа, свързан с k1.

Ако trueсе предаде като bv2, методът връща всички записи, свързани с ключове между k1 и k2, включително записа, свързан с k1.

Други методи

Предоставя NavigableMapразлични методи, които могат да се използват за намиране на записите на картите.

  • descendingMap () - обърнете реда на записите в картата
  • descendingKeyMap () - обръща реда на ключовете в картата
  • таванEntry () - връща запис с най-ниския ключ сред всички тези записи, чиито ключове са по-големи или равни на посочения ключ
  • таванKey () - връща най-ниския ключ сред тези ключове, които са по-големи или равни на посочения ключ
  • floorEntry () - връща запис с най-високия ключ сред всички тези записи, чиито ключове са по-малки или равни на посочения ключ
  • floorKey () - връща най-високия ключ измежду тези ключове, които са по-малки или равни на посочения ключ
  • higherEntry () - връща запис с най-ниския ключ сред всички тези записи, чиито ключове са по-големи от посочения ключ
  • higherKey () - връща най-ниския ключ сред тези ключове, които са по-големи от посочения ключ
  • lowerEntry () - връща запис с най-високия ключ сред всички записи, чиито ключове са по-малко от посочения ключ
  • lowerKey () - връща най-високия ключ сред тези ключове, които са по-малко от посочения ключ
  • firstEntry () - връща първия запис (записа с най-ниския ключ) на картата
  • lastEntry () - връща последния запис (записа с най-високия ключ) на картата
  • pollFirstEntry () - връща и премахва първия запис на картата
  • pollLastEntry () - връща и премахва последното въвеждане на картата

За да научите повече, посетете Java NavigableMap (официална документация за Java).

Внедряване на NavigableMap в клас 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()); ) ) 

Изход

 NavigableMap: (One = 1, Three = 3, Two = 2) First Entry: One = 1 Last Entry: Two = 2 Removed First Entry: One = 1 Removed Last Entry: Two = 2 

За да научите повече за TreeMap, посетете Java TreeMap.

Сега знаем за NavigableMapинтерфейса, ще научим за неговото изпълнение, като използваме TreeMapкласа подробно в следващия урок.

Интересни статии...