Рубрики

Как использовать Iterator в Java?

«Итератор» — это интерфейс, принадлежащий платформе коллекции. Это позволяет нам просматривать коллекцию, получать доступ к элементу данных и удалять элементы данных из коллекции.
Пакет java.util имеет открытый интерфейс Iterator и содержит три метода:

  1. boolean hasNext () : возвращает true, если у Iterator есть больше элементов для итерации.
  2. Object next () : возвращает следующий элемент в коллекции, пока метод hasNext () не вернет true. Этот метод генерирует исключение NoSuchElementException, если следующего элемента нет.
  3. void remove () : удаляет текущий элемент в коллекции. Этот метод создает исключение IllegalStateException, если эта функция вызывается перед вызовом next ().

// Java-код для иллюстрации использования итератора

import java.io.*;

import java.util.*;

  

class Test {

    public static void main(String[] args)

    {

        ArrayList<String> list = new ArrayList<String>();

  

        list.add("A");

        list.add("B");

        list.add("C");

        list.add("D");

        list.add("E");

  

        // Итератор для обхода списка

        Iterator iterator = list.iterator();

  

        System.out.println("List elements : ");

  

        while (iterator.hasNext())

            System.out.print(iterator.next() + " ");

  

        System.out.println();

    }

}

Выход:

List elements : 
A B C D E 

ListIterator

«ListIterator» в Java — это итератор, который позволяет пользователям перемещаться по Collection в обоих направлениях. Он содержит следующие методы:

  1. void add (Object object) : вставляет объект непосредственно перед элементом, который возвращается функцией next ().
  2. boolean hasNext () : Возвращает true, если в списке есть следующий элемент.
  3. boolean hasPrevious () : возвращает true, если в списке есть предыдущий элемент.
  4. Object next () : возвращает следующий элемент списка. Выдает NoSuchElementException, если в списке нет следующего элемента.
  5. Object previous () : возвращает предыдущий элемент списка. Выдает NoSuchElementException, если нет предыдущего элемента.
  6. void remove () : удаляет текущий элемент из списка. Он выдает IllegalStateException, если эта функция вызывается до вызова next () или previous ().

// Java-код для иллюстрации использования ListIterator

import java.io.*;

import java.util.*;

  

class Test {

    public static void main(String[] args)

    {

        ArrayList<String> list = new ArrayList<String>();

  

        list.add("A");

        list.add("B");

        list.add("C");

        list.add("D");

        list.add("E");

  

        // ListIterator для обхода списка

        ListIterator iterator = list.listIterator();

  

        // Обход списка в прямом направлении

        System.out.println("Displaying list elements in forward direction : ");

  

        while (iterator.hasNext())

            System.out.print(iterator.next() + " ");

  

        System.out.println();

  

        // Обход списка в обратном направлении

        System.out.println("Displaying list elements in backward direction : ");

  

        while (iterator.hasPrevious())

            System.out.print(iterator.previous() + " ");

  

        System.out.println();

    }

}

Выход:

Displaying list elements in forward direction : 
A B C D E 
Displaying list elements in backward direction : 
E D C B A 

Статьи по Теме:

Эта статья предоставлена Мехаком Нарангом.

Пожалуйста, напишите комментарии, если вы обнаружите что-то неправильное, или вы хотите поделиться дополнительной информацией по обсуждаемой теме

Рекомендуемые посты:

Как использовать Iterator в Java?

0.00 (0%) 0 votes