Encodera

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

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

Справочник Java

List.remove()

Удаляет элемент списка по индексу или по значению.

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

Синтаксис

E remove(int index)
boolean remove(Object o)

Параметры

ПараметрТипОписание
indexintПозиция удаляемого элемента.
oObjectУдаляемый элемент (первое вхождение).

Возвращаемое значение

E | booleanПо индексу — удалённый элемент; по значению — `true`, если элемент был найден.

Примеры

Удаление по индексу и по значению:

void main() {
    List<String> items = new ArrayList<>(List.of("a", "b", "c", "b"));
    items.remove(0);
    IO.println(items);
    items.remove("b");
    IO.println(items);
}

Результат:

[b, c, b]
[c, b]

Ловушка со списком чисел: remove(1) удаляет по индексу:

void main() {
    List<Integer> nums = new ArrayList<>(List.of(5, 1, 7));
    nums.remove(1);
    IO.println(nums);
    nums.remove(Integer.valueOf(7));
    IO.println(nums);
}

Результат:

[5, 7]
[5]

Примечания

Для List<Integer> вызов remove(1) выбирает версию с int и удаляет элемент с индексом 1. Чтобы удалить значение, передайте объект: remove(Integer.valueOf(1)). Удаление по значению убирает только первое вхождение; для всех совпадений используйте removeIf().

См. также

  • List.add() — Добавляет элемент в конец списка или в указанную позицию.
  • Collection.removeIf() — Удаляет из коллекции все элементы, подходящие под условие.
  • List.indexOf() — Находит позицию элемента в списке.

Вопросы и ответы по теме

В учебнике

  • Списки: List и ArrayList — Списки в Java: ArrayList, добавление, чтение и удаление элементов, неизменяемые списки List.of и списки чисел.

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

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