Чтобы получить неизменяемую (только для чтения) коллекцию в Java, можно использовать методы из класса Collections. Например, для создания неизменяемого списка можно использовать метод Collections.unmodifiableList(), для создания неизменяемого множества - Collections.unmodifiableSet(), и т.д. Здесь пример создания неизменяемого списка:
List<String> originalList = new ArrayList<>();
originalList.add("one");
originalList.add("two");
originalList.add("three");
List<String> unmodifiableList = Collections.unmodifiableList(originalList);
После этого unmodifiableList будет неизменяемым, то есть любые попытки изменить его содержимое приведут к генерации исключения UnsupportedOperationException. Чтобы получить неизменяемую коллекцию из какой-то другой коллекции, можно использовать метод unmodifiableXXX() из класса Collections:
List<String> originalList = new ArrayList<>();
originalList.add("one");
originalList.add("two");
originalList.add("three");
List<String> unmodifiableList = Collections.unmodifiableList(originalList);
Set<String> originalSet = new HashSet<>(originalList);
Set<String> unmodifiableSet = Collections.unmodifiableSet(originalSet);
1606 вопрос-ответ по Java: https://github.com/DEBAGanov/interview_questions
Tелеграмм канал: https://t.me/DEBAGanov
Мое резюме: https://github.com/DEBAGanov