English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
В этом руководстве мы научимся Java Iterator интерфейсу через пример.
Интерфейс Iterator в фреймворке Java Collection позволяет нам доступ к элементам набора. У него есть подинтерфейс ListIterator.
Все Java-сборники содержат метод iterator(), который возвращает экземпляр迭代атора для итерации по элементам сборника.
Интерфейс Iterator предоставляет 4 метода, которые можно использовать для выполнения различных операций с элементами набора.
hasNext() - возвращает true, если в наборе есть элементы
next() - возвращает следующий элемент набора
remove() - удаляет последний элемент, возвращенный next()
forEachRemaining() - выполняет指定的 действие для каждого оставшегося элемента в наборе
В следующем примере мы реализовали методы hasNext(), next(), remove() и forEachRemaining() интерфейса Iterator в списке массивов.
import java.util.ArrayList; import java.util.Iterator; class Main { public static void main(String[] args) { //Создание ArrayList ArrayList<Integer> numbers = new ArrayList<>(); numbers.add(1); numbers.add(3); numbers.add(2); System.out.println("ArrayList: " + numbers); //Создание экземпляра Iterator Iterator<Integer> iterate = numbers.iterator(); //Использование метода next() int number = iterate.next(); System.out.println("Доступ к элементу: " + number); //Использование метода remove() iterate.remove(); System.out.println("Удаление элемента: " + number); System.out.print("Обновленный ArrayList: "); //Использование метода hasNext() while(iterate.hasNext()) { //Использование метода forEachRemaining() iterate.forEachRemaining((value) -> System.out.print(value + ", ")); } } }
Результат вывода
ArrayList: [1, 3, 2] Доступ к элементу: 1 Удаленный элемент: 1 Обновленный ArrayList: 3, 2,
В примере выше обратите внимание на следующие строки:
iterate.forEachRemaining((value) -> System.put.print(value + ", "));
Здесь мыlambda выражениеПередается в качестве параметра метода forEachRemaining().
Теперь该方法 будет распечатывать все оставшиеся элементы в списке массивов.