РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
421 of 1163 menu

Интерфейс SequencedMap

Интерфейс SequencedMap расширяет обычный интерфейс Map и добавляет гарантию того, что элементы хранятся в определённом порядке. В отличие от обычной карты, где порядок не гарантируется, SequencedMap предоставляет методы для доступа к первому и последнему элементу, а также для получения обратного представления карты. Этот интерфейс появился в Java 21.

Основные методы включают firstEntry и lastEntry для получения первой и последней пары ключ-значение, pollFirstEntry и pollLastEntry для извлечения и удаления этих пар, а также reversed для получения обратного представления карты.

Синтаксис

interface SequencedMap<K, V> extends Map<K, V>

Пример

Давайте создадим SequencedMap на основе LinkedHashMap и получим его первый и последний элементы:

import java.util.LinkedHashMap; import java.util.SequencedMap; public class Main { public static void main(String[] args) { SequencedMap<String, Integer> map = new LinkedHashMap<>(); map.put("a", 1); map.put("b", 2); map.put("c", 3); System.out.println(map.firstEntry()); System.out.println(map.lastEntry()); } }

Результат выполнения кода:

a=1 c=3

Пример

Давайте извлечём и удалим первый и последний элементы:

import java.util.LinkedHashMap; import java.util.SequencedMap; public class Main { public static void main(String[] args) { SequencedMap<String, Integer> map = new LinkedHashMap<>(); map.put("a", 1); map.put("b", 2); map.put("c", 3); System.out.println(map.pollFirstEntry()); System.out.println(map.pollLastEntry()); System.out.println(map); } }

Результат выполнения кода:

a=1 c=3 {b=2}

Пример

Давайте получим обратное представление карты:

import java.util.LinkedHashMap; import java.util.SequencedMap; public class Main { public static void main(String[] args) { SequencedMap<String, Integer> map = new LinkedHashMap<>(); map.put("a", 1); map.put("b", 2); map.put("c", 3); SequencedMap<String, Integer> reversed = map.reversed(); System.out.println(reversed); } }

Результат выполнения кода:

{c=3, b=2, a=1}

Смотрите также

  • интерфейс Map,
    который представляет базовую карту
  • класс LinkedHashMap,
    который реализует упорядоченную карту
  • метод sequencedKeySet,
    который возвращает упорядоченное множество ключей
  • интерфейс NavigableMap,
    который расширяет SortedMap
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить