Метод ofEntries
Метод ofEntries класса Map создает и возвращает
неизменяемую (immutable) карту, заполненную парами
ключ-значение. В параметры метода мы передаем объекты
Map.Entry, каждый из которых содержит ключ и значение.
Количество переданных пар может быть произвольным.
Попытка изменить созданную карту (добавить, удалить или
заменить элемент) приведет к исключению
UnsupportedOperationException. Также карта не может
содержать null в качестве ключа или значения.
Синтаксис
Map.ofEntries(entry1, entry2, ...)
Пример
Давайте создадим неизменяемую карту из двух пар
ключ-значение с помощью метода Map.entry:
import java.util.Map;
public class Main
{
public static void main(String[] args)
{
Map<String, Integer> map = Map.ofEntries(
Map.entry("a", 1),
Map.entry("b", 2)
);
System.out.println(map);
}
}
Результат выполнения кода:
{a=1, b=2}
Пример
Давайте создадим карту из трех пар и получим значение
по ключу "b":
import java.util.Map;
public class Main
{
public static void main(String[] args)
{
Map<String, Integer> map = Map.ofEntries(
Map.entry("a", 1),
Map.entry("b", 2),
Map.entry("c", 3)
);
int res = map.get("b");
System.out.println(res);
}
}
Результат выполнения кода:
2
Пример
Давайте убедимся, что созданная карта является неизменяемой, и попытка добавить в нее элемент приведет к исключению:
import java.util.Map;
public class Main
{
public static void main(String[] args)
{
Map<String, Integer> map = Map.ofEntries(
Map.entry("a", 1),
Map.entry("b", 2)
);
try
{
map.put("c", 3);
}
catch (UnsupportedOperationException e)
{
System.out.println("Map is immutable");
}
}
}
Результат выполнения кода:
"Map is immutable"