Collections Начинающий

Создание неизменяемых Map встроенно без Builder.

✕ Java 8
Map<String, Integer> map = new HashMap<>();
map.put("a", 1);
map.put("b", 2);
map.put("c", 3);
map = Collections.unmodifiableMap(map);
✓ Java 9+
Map<String, Integer> map =
    Map.of("a", 1, "b", 2, "c", 3);
Заметили проблему в этом коде? Сообщите нам.
📏

Встроенное создание

Не требует временной изменяемой Map.

🔒

Неизменяемый результат

Map нельзя изменить после создания.

🚫

Без null-ключей/значений

Null-записи немедленно отклоняются.

Старый подход
Паттерн Map-Builder
Современный подход
Map.of()
Начиная с JDK
9
Сложность
Начинающий
Создание неизменяемых Map
Доступно

Широко доступно начиная с JDK 9 (сент. 2017)

Map.of() принимает пары ключ-значение встроенно и возвращает неизменяемую Map. Для более чем 10 записей использовать Map.ofEntries() с парами Map.entry().