Encodera

Спасибо, что читаете!

Пожертвуйте сайту, мы стараемся ради вас.

Справочник Java

UnsupportedOperationException

Возникает при вызове операции, которую объект не поддерживает, — например, изменение неизменяемой коллекции.

Доступно с: Java 1.2

Синтаксис

public class UnsupportedOperationException extends RuntimeException

Примеры

Неизменяемый список:

void main() {
    List<String> fixed = List.of("a", "b");
    try {
        fixed.add("c");
    } catch (UnsupportedOperationException e) {
        IO.println(e);
    }
    List<String> resizable = Arrays.asList("x", "y");
    resizable.set(0, "z");
    IO.println(resizable);
}

Результат:

java.lang.UnsupportedOperationException
[z, y]

Примечания

Его бросают коллекции из List.of(), Set.of(), Map.of(), stream.toList(), Collections.unmodifiableList(), а Arrays.asList() — при изменении размера. Решение — изменяемая копия: new ArrayList<>(list).

См. также

  • List.of() — Создаёт неизменяемый список из перечисленных элементов.
  • Collections.unmodifiableList() — Возвращает представление списка, которое нельзя изменить.
  • Stream.toList() — Собирает элементы потока в неизменяемый список.

В учебнике

  • Что такое исключения — Исключения в Java — как программа сообщает об ошибке, как читать трассировку стека, частые исключения и иерархия Throwable.

Спасибо, что читаете!

Пожертвуйте сайту, мы стараемся ради вас.