Метод add
Метод add класса ListIterator добавляет
указанный элемент в список. Элемент вставляется
непосредственно перед элементом, который был бы
возвращен методом next. В первый параметр
мы передаем элемент, который нужно добавить
в список. После добавления курсор итератора
смещается вперед, а новый элемент оказывается
позади курсора. Метод не возвращает значения.
Синтаксис
listIterator.add(element)
Пример
Давайте создадим список и добавим в него новый элемент во время итерации:
import java.util.ArrayList;
import java.util.List;
import java.util.ListIterator;
public class Main
{
public static void main(String[] args)
{
List<String> list = new ArrayList<>(List.of("a", "b", "c"));
ListIterator<String> iter = list.listIterator();
while (iter.hasNext())
{
String elem = iter.next();
if (elem.equals("b"))
{
iter.add("x");
}
}
System.out.println(list);
}
}
Результат выполнения кода:
[a, b, x, c]
Пример
Давайте добавим элемент в начало списка.
Для этого вызовем add до первого
вызова метода next:
import java.util.ArrayList;
import java.util.List;
import java.util.ListIterator;
public class Main
{
public static void main(String[] args)
{
List<Integer> list = new ArrayList<>(List.of(1, 2, 3, 4, 5));
ListIterator<Integer> iter = list.listIterator();
iter.add(0);
System.out.println(list);
}
}
Результат выполнения кода:
[0, 1, 2, 3, 4, 5]
Пример
Давайте пройдем итератором до конца списка и добавим элемент в конец:
import java.util.ArrayList;
import java.util.List;
import java.util.ListIterator;
public class Main
{
public static void main(String[] args)
{
List<Integer> list = new ArrayList<>(List.of(1, 2, 3));
ListIterator<Integer> iter = list.listIterator();
while (iter.hasNext())
{
iter.next();
}
iter.add(4);
System.out.println(list);
}
}
Результат выполнения кода:
[1, 2, 3, 4]
Смотрите также
-
класс
ListIterator,
который позволяет перебирать список в обоих направлениях -
метод
set,
который заменяет текущий элемент списка -
метод
previous,
который возвращает предыдущий элемент -
метод
hasPrevious,
который проверяет наличие предыдущего элемента