Encodera

Спасибо, что читаете!

Пожертвуйте сайту, мы стараемся ради вас.

Справочник Java

Map.forEach()

Выполняет действие для каждой пары словаря.

Доступно с: Java 8

Синтаксис

default void forEach(BiConsumer<? super K, ? super V> action)

Параметры

ПараметрТипОписание
actionBiConsumer<? super K, ? super V>Действие, которое получает ключ и значение.

Примеры

Печать пар лямбдой:

void main() {
    Map<String, Integer> ages = new TreeMap<>(Map.of("Anna", 31, "Oleg", 25));
    ages.forEach((name, age) -> IO.println(name + " is " + age));
}

Результат:

Anna is 31
Oleg is 25

Примечания

Лямбда получает сразу два параметра — ключ и значение, без Map.Entry. Внутри нельзя менять сам словарь (добавлять или удалять ключи). Если нужен break или return из внешнего метода, используйте обычный цикл по entrySet().

См. также

  • Map.entrySet() — Возвращает все пары «ключ — значение» для обхода.
  • Iterable — Интерфейс всего, что можно обойти циклом for-each.
  • Stream.forEach() — Выполняет действие для каждого элемента потока (завершающая операция).

Вопросы и ответы по теме

В учебнике

  • Словари: Map и HashMap — Словари Map в Java: пары ключ — значение, put и get, getOrDefault, подсчёт с merge, TreeMap и LinkedHashMap.

Спасибо, что читаете!

Пожертвуйте сайту, мы стараемся ради вас.