В этом руководстве мы узнаем об интерфейсе Java Iterator на примере.
Iterator
Интерфейс рамок коллекций Java позволяет элементам доступа к коллекции. Имеет подинтерфейс ListIterator
.
Все коллекции Java включают iterator()
метод. Этот метод возвращает экземпляр итератора, используемого для перебора элементов коллекций.
Методы Итератора
Iterator
Интерфейс предоставляет 4 методы , которые могут быть использованы для выполнения различных операций по элементам коллекций.
hasNext()
- возвращает,true
если в коллекции есть элементnext()
- возвращает следующий элемент коллекцииremove()
- удаляет последний элемент, возвращаемыйnext()
forEachRemaining()
- выполняет указанное действие для каждого оставшегося элемента коллекции
Пример: реализация итератора
В приведенном ниже примере, мы реализовали hasNext()
, next(),
remove()
и forEachRemining()
методы Iterator
интерфейса в списке массива.
import java.util.ArrayList; import java.util.Iterator; class Main ( public static void main(String() args) ( // Creating an ArrayList ArrayList numbers = new ArrayList(); numbers.add(1); numbers.add(3); numbers.add(2); System.out.println("ArrayList: " + numbers); // Creating an instance of Iterator Iterator iterate = numbers.iterator(); // Using the next() method int number = iterate.next(); System.out.println("Accessed Element: " + number); // Using the remove() method iterate.remove(); System.out.println("Removed Element: " + number); System.out.print("Updated ArrayList: "); // Using the hasNext() method while(iterate.hasNext()) ( // Using the forEachRemaining() method iterate.forEachRemaining((value) -> System.out.print(value + ", ")); ) ) )
Вывод
ArrayList: (1, 3, 2) Доступный элемент: 1 Удаленный элемент: 1 Обновленный ArrayList: 3, 2,
Обратите внимание на утверждение в приведенном выше примере:
iterate.forEachRemaining((value) -> System.put.print(value + ", "));
Здесь мы передали лямбда-выражение в качестве аргумента forEachRemaining()
метода.
Теперь метод распечатает все оставшиеся элементы списка массива.