J
Java Geek
@java_geek2.5K подп.
590просмотров
23.9%от подписчиков
20 января 2026 г.
Score: 649
☕️ Java Tips: Инициализация карты в одну строку с Map.of() Помните, как раньше приходилось создавать Map с заранее известными значениями? Куча вызовов .put(), статические блоки или (не дай бог) двойные фигурные скобки. Начиная с Java 9, у нас есть красивый и лаконичный способ - Map.of(). Разберем, как это работает и, главное, чего нельзя делать. 🆚 До и После Как было раньше (The Old Way): Map<String, Integer> map = new HashMap<>(); map.put("One", 1); map.put("Two", 2); map.put("Three", 3); // Результат: много строк кода ради простых данных Как сейчас (The Modern Way): Map<String, Integer> map = Map.of( "One", 1, "Two", 2, "Three", 3 ); // Результат: чисто, читаемо, одна инструкция ⚠️ Важные нюансы (Gotchas) Использование Map.of() - это не просто синтаксический сахар для HashMap. Это создание неизменяемой (Immutable) структуры. 1. Нельзя менять данные Попытка добавить или удалить элемент приведет к ошибке. var colors = Map.of("Red", "#FF0000"); colors.put("Blue", "#0000FF"); // ❌ Ошибка: UnsupportedOperationException 2. Никаких null В отличие от HashMap, здесь нельзя использовать null ни в ключах, ни в значениях. Map.of("Key", null); // ❌ Ошибка: NullPointerException 3. Лимит в 10 пар Метод Map.of() перегружен для приема до 10 пар ключ-значение. Если нужно больше, используйте Map.ofEntries(): Map.ofEntries( Map.entry("k1", "v1"), Map.entry("k2", "v2"), // ... хоть 100 пар Map.entry("k100", "v100") ); 🚀 Когда использовать? Идеально подходит для конфигураций, статических словарей, тестовых данных и справочников, которые не меняются во время работы программы. #Java #CodeTips #Programming #Java9 👉 @java_geek
590
просмотров
1694
символов
Да
эмодзи
Нет
медиа

Другие посты @java_geek

Все посты канала →
☕️ Java Tips: Инициализация карты в одну строку с Map.of() П — @java_geek | PostSniper