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

Класс LinkedHashMap

Класс LinkedHashMap расширяет класс HashMap и реализует интерфейс Map. В отличие от обычной хеш-таблицы, LinkedHashMap запоминает порядок, в котором элементы были добавлены. Внутри он использует двусвязный список, который проходит через все записи, поэтому при переборе элементы возвращаются в порядке вставки. В конструктор можно передать начальную емкость, коэффициент загрузки и флаг accessOrder: если он равен true, то порядок будет не вставки, а последнего доступа к элементу.

Синтаксис

LinkedHashMap<KeyType, ValueType> map = new LinkedHashMap<>(); LinkedHashMap<KeyType, ValueType> map = new LinkedHashMap<>(initialCapacity); LinkedHashMap<KeyType, ValueType> map = new LinkedHashMap<>(initialCapacity, loadFactor, accessOrder);

Пример

Давайте создадим LinkedHashMap и добавим в нее несколько пар ключ-значение:

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

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

{a=1, b=2, c=3, d=4, e=5}

Пример

Давайте получим значение по ключу и проверим, что порядок вставки сохраняется:

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

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

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

Пример

Давайте создадим LinkedHashMap с порядком доступа, передав в конструктор accessOrder равным true:

import java.util.LinkedHashMap; import java.util.Map; public class Main { public static void main(String[] args) { Map<String, Integer> map = new LinkedHashMap<>(16, 0.75f, true); map.put("a", 1); map.put("b", 2); map.put("c", 3); map.put("d", 4); map.put("e", 5); map.get("a"); map.get("c"); System.out.println(map); } }

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

{b=2, d=4, e=5, a=1, c=3}

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

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