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

Метод copyOf

Метод copyOf создает и возвращает неизменяемую копию переданной коллекции. В первый параметр мы передаем коллекцию, которую необходимо скопировать. Метод возвращает список, содержащий все элементы исходной коллекции в том же порядке. Если переданная коллекция равна null, метод выбрасывает исключение NullPointerException.

Синтаксис

List.copyOf(collection)

Пример

Давайте создадим неизменяемую копию списка:

import java.util.List; public class Main { public static void main(String[] args) { List<String> original = List.of("a", "b", "c", "d", "e"); List<String> copy = List.copyOf(original); System.out.println(copy); } }

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

[a, b, c, d, e]

Пример

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

import java.util.List; public class Main { public static void main(String[] args) { List<String> original = List.of("a", "b", "c"); List<String> copy = List.copyOf(original); try { copy.add("d"); } catch (UnsupportedOperationException e) { System.out.println("List is immutable"); } } }

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

"List is immutable"

Пример

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

import java.util.ArrayList; import java.util.List; public class Main { public static void main(String[] args) { List<Integer> original = new ArrayList<>(List.of(1, 2, 3, 4, 5)); List<Integer> copy = List.copyOf(original); original.add(6); System.out.println("Original: " + original); System.out.println("Copy: " + copy); } }

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

Original: [1, 2, 3, 4, 5, 6] Copy: [1, 2, 3, 4, 5]

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

  • класс List,
    который представляет список элементов
  • метод of,
    который создает неизменяемый список
  • метод add,
    который добавляет элемент в список
  • метод get,
    который возвращает элемент по индексу
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить