РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
325 of 1163 menu

Метод unmodifiableList

Метод unmodifiableList класса Collections возвращает неизменяемое представление переданного списка. В первый параметр мы передаем исходный список, который нужно защитить от изменений. Любая попытка изменить полученный список (добавить, удалить или заменить элемент) приведет к исключению UnsupportedOperationException. При этом сам исходный список остается изменяемым, и все изменения в нем отражаются в неизменяемом представлении.

Синтаксис

Collections.unmodifiableList(list)

Пример

Давайте создадим неизменяемый список и попробуем добавить в него элемент:

import java.util.*; public class Main { public static void main(String[] args) { List<String> list = new ArrayList<>(List.of("a", "b", "c", "d", "e")); List<String> res = Collections.unmodifiableList(list); System.out.println(res); res.add("f"); } }

Результат выполнения кода:

[a, b, c, d, e] Exception in thread "main" java.lang.UnsupportedOperationException

Пример

Давайте изменим исходный список и посмотрим, как это отразится на неизменяемом представлении:

import java.util.*; public class Main { public static void main(String[] args) { List<Integer> list = new ArrayList<>(List.of(1, 2, 3, 4, 5)); List<Integer> res = Collections.unmodifiableList(list); list.add(6); System.out.println(res); } }

Результат выполнения кода:

[1, 2, 3, 4, 5, 6]

Пример

Давайте попробуем удалить элемент из неизменяемого списка:

import java.util.*; public class Main { public static void main(String[] args) { List<String> list = new ArrayList<>(List.of("a", "b", "c", "d", "e")); List<String> res = Collections.unmodifiableList(list); res.remove(0); } }

Результат выполнения кода:

Exception in thread "main" java.lang.UnsupportedOperationException

Смотрите также

  • класс Collections,
    который содержит методы для работы с коллекциями
  • метод synchronizedList,
    который создает потокобезопасный список
  • метод singletonList,
    который создает список из одного элемента
  • метод emptyList,
    который возвращает пустой неизменяемый список
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить