Интерфейс Java ListIterator

Содержание

В этом руководстве мы узнаем об интерфейсе Java ListIterator на примере.

ListIteratorИнтерфейс рамок коллекций Java обеспечивает функциональные возможности для элементов доступа списка.

Он двунаправленный. Это означает, что он позволяет нам перебирать элементы списка в обоих направлениях.

Расширяет Iteratorинтерфейс.

ListИнтерфейс предоставляет listIterator()метод , который возвращает экземпляр ListIteratorинтерфейса.

Методы ListIterator

ListIteratorИнтерфейс предоставляет методы , которые могут быть использованы для выполнения различных операций по элементам списка.

  • hasNext() - возвращает истину, если в списке есть элемент
  • next() - возвращает следующий элемент списка
  • nextIndex()возвращает индекс элемента, next()который вернет метод
  • previous() - возвращает предыдущий элемент списка
  • previousIndex()- возвращает индекс элемента, previous()который вернет метод
  • remove()- удаляет элемент, возвращаемый либо next()илиprevious()
  • set()- заменяет элемент , возвращенный либо next()или previous()с указанным элементом

Пример 1: реализация ListIterator

В приведенном ниже примере, мы реализовали next(), nextIndex()и hasNext()методы ListIteratorинтерфейса в списке массива.

 import java.util.ArrayList; import java.util.ListIterator; 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 ListIterator ListIterator iterate = numbers.listIterator(); // Using the next() method int number1 = iterate.next(); System.out.println("Next Element: " + number1); // Using the nextIndex() int index1 = iterate.nextIndex(); System.out.println("Position of Next Element: " + index1); // Using the hasNext() method System.out.println("Is there any next element? " + iterate.hasNext()); ) ) 

Вывод

ArrayList: (1, 3, 2) Следующий элемент: 1 Позиция следующего элемента: 1 Есть ли следующий элемент? правда

Пример 2: Реализация ListIterator

В приведенном ниже примере, мы реализовали previous()и previousIndex()методы ListIteratorинтерфейса в списке массива.

 import java.util.ArrayList; import java.util.ListIterator; 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 ListIterator ListIterator iterate = numbers.listIterator(); iterate.next(); iterate.next(); // Using the previous() method int number1 = iterate.previous(); System.out.println("Previous Element: " + number1); // Using the previousIndex() int index1 = iterate.previousIndex(); System.out.println("Position of the Previous element: " + index1); ) ) 

Вывод

 ArrayList: (1, 3, 2) Предыдущий элемент: 3 Позиция предыдущего элемента: 0 

В приведенном выше примере изначально экземпляр Iteratorбыл перед 1. Поскольку не было элемента перед 1, вызов previous()метода вызовет исключение.

Затем мы использовали next()методы 2 раза. Теперь Iteratorэкземпляр будет между 3 и 2.

Следовательно, previous()метод возвращает 3.

Интересные статьи...