Промышленное производство
Промышленный Интернет вещей | Промышленные материалы | Техническое обслуживание и ремонт оборудования | Промышленное программирование |
home  MfgRobots >> Промышленное производство >  >> Industrial programming >> java

Освоение интерфейса Iterator в Java: практическое руководство с примером кода

Интерфейс Iterator в Java

Интерфейс Iterator, входящий в фреймворк коллекций Java, предоставляет унифицированный способ обхода любой коллекции. Он расширяется интерфейсом ListIterator для списков.

Каждый класс коллекции предлагает метод iterator(), возвращающий экземпляр Iterator, что обеспечивает безопасный обход и модификацию.


Методы Iterator

Интерфейс определяет четыре основных метода:


Пример: использование Iterator с ArrayList

Ниже приведён пример реализации всех четырёх методов для ArrayList<Integer>:

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<Integer> iterator = numbers.iterator();

        // Обращаемся к первому элементу
        int number = iterator.next();
        System.out.println("Полученный элемент: " + number);

        // Удаляем этот элемент
        iterator.remove();
        System.out.println("Удалённый элемент: " + number);
        System.out.print("Обновлённый ArrayList: ");

        // Итерируемся по оставшимся элементам
        while (iterator.hasNext()) {
            iterator.forEachRemaining(value -> System.out.print(value + ", "));
        }
    }
}

Вывод

ArrayList: [1, 3, 2]
Полученный элемент: 1
Удалённый элемент: 1
Обновлённый ArrayList: 3, 2, 

Лямбда-выражение, переданное в forEachRemaining(), демонстрирует лаконичную обработку каждого оставшегося элемента.

java

  1. Методы в Java: как определять, вызывать и эффективно использовать
  2. Интерфейсы в Java: концепции, реализация и лучшие практики
  3. Типы аннотаций в Java: предопределенные, кастомные и мета-аннотации
  4. Освоение интерфейса NavigableSet в Java: навигация, сортировка и практические примеры
  5. Освоение Java Lambda-выражений: от основ к Stream API
  6. Понимание String.charAt() в Java: синтаксис, возвращаемый тип, исключения и пример
  7. Переопределение методов в Java: настройка поведения суперкласса
  8. Интерфейсы в Java: определение, использование и лучшие практики
  9. Java 9 Private Interface Methods: инкапсуляция и повторное использование кода
  10. Java 8 Method References: подробное руководство (:: оператор)