Фабрика Map.entry()
Создание записей Map с помощью чистого фабричного метода.
Сравнение кода
✕ Java 8
Map.Entry<String, Integer> e =
new AbstractMap.SimpleEntry<>(
"key", 42
);
✓ Java 9+
var e = Map.entry("key", 42);
Заметили проблему в этом коде? Сообщите нам.
Почему современный подход лучше
Лаконично
Одна строка вместо трёх с более чётким намерением.
Неизменяемый
Возвращаемую запись нельзя изменить.
Комбинируемый
Отлично работает с Map.ofEntries() для больших Map.
Старый подход
SimpleEntry
Современный подход
Map.entry()
Начиная с JDK
9
Сложность
Начинающий
Поддержка JDK
Фабрика Map.entry()
Доступно
Широко доступно начиная с JDK 9 (сент. 2017)
Как это работает
Map.entry() заменяет многословный конструктор AbstractMap.SimpleEntry. Возвращает неизменяемую запись, идеально подходящую для Map.ofEntries() и операций со Stream.
Связанная документация
Доказательство