List.remove()
Удаляет элемент списка по индексу или по значению.
Доступно с: Java 1.2
Синтаксис
E remove(int index)
boolean remove(Object o)Параметры
| Параметр | Тип | Описание |
|---|---|---|
| index | int | Позиция удаляемого элемента. |
| o | Object | Удаляемый элемент (первое вхождение). |
Возвращаемое значение
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 и списки чисел.