У цьому посібнику ми дізнаємося про інтерфейс Java ListIterator за допомогою прикладу.
ListIterator
Інтерфейс рамок колекцій Java забезпечує функціональні можливості для елементів доступу списку.
Вона є двонаправленою. Це означає, що це дозволяє нам повторювати елементи списку в обох напрямках.
Це розширює Iterator
інтерфейс.
List
Інтерфейс надає listIterator()
метод , який повертає екземпляр ListIterator
інтерфейсу.
Методи ListIterator
ListIterator
Інтерфейс надає методи , які можуть бути використані для виконання різних операцій по елементах списку.
hasNext()
- повертає true, якщо в списку є елемент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
У наведеному вище прикладі спочатку екземпляр the Iterator
був до 1. Оскільки до 1 не було елемента, то виклик previous()
методу видасть виняток.
Потім ми використовували next()
методи 2 рази. Тепер Iterator
екземпляр буде між 3 і 2.
Отже, previous()
метод повертає 3.