Interfaz Java ListIterator
Interfaz Java ListIterator
En este tutorial, aprenderemos sobre la interfaz Java ListIterator con la ayuda de un ejemplo.
El ListIterator
La interfaz del marco de colecciones de Java proporciona la funcionalidad para acceder a los elementos de una lista.
Es bidireccional. Esto significa que nos permite iterar elementos de una lista en ambas direcciones.
Extiende el Iterator
interfaz.
El List
interfaz proporciona un listIterator()
método que devuelve una instancia de ListIterator
interfaz.
Métodos de ListIterator
El ListIterator
La interfaz proporciona métodos que se pueden usar para realizar varias operaciones en los elementos de una lista.
hasNext()
- devuelve verdadero si existe un elemento en la listanext()
- devuelve el siguiente elemento de la listanextIndex()
devuelve el índice del elemento que elnext()
el método regresaráprevious()
- devuelve el elemento anterior de la listapreviousIndex()
- devuelve el índice del elemento que elprevious()
el método regresaráremove()
- elimina el elemento devuelto pornext()
oprevious()
set()
- reemplaza el elemento devuelto pornext()
oprevious()
con el elemento especificado
Ejemplo 1:Implementación de ListIterator
En el siguiente ejemplo, hemos implementado el next()
, nextIndex()
y hasNext()
métodos del ListIterator
interfaz en una lista de arreglos.
import java.util.ArrayList;
import java.util.ListIterator;
class Main {
public static void main(String[] args) {
// Creating an ArrayList
ArrayList<Integer> numbers = new ArrayList<>();
numbers.add(1);
numbers.add(3);
numbers.add(2);
System.out.println("ArrayList: " + numbers);
// Creating an instance of ListIterator
ListIterator<Integer> 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());
}
}
Salida
ArrayList: [1, 3, 2] Next Element: 1 Position of Next Element: 1 Is there any next element? true
Ejemplo 2:Implementación de ListIterator
En el siguiente ejemplo, hemos implementado el previous()
y previousIndex()
métodos del ListIterator
interfaz en una lista de arreglos.
import java.util.ArrayList;
import java.util.ListIterator;
class Main {
public static void main(String[] args) {
// Creating an ArrayList
ArrayList<Integer> numbers = new ArrayList<>();
numbers.add(1);
numbers.add(3);
numbers.add(2);
System.out.println("ArrayList: " + numbers);
// Creating an instance of ListIterator
ListIterator<Integer> 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);
}
}
Salida
ArrayList: [1, 3, 2] Previous Element: 3 Position of the Previous Element: 0
En el ejemplo anterior, inicialmente, la instancia del Iterator
fue antes de 1. Dado que no había ningún elemento antes de 1, llamar al previous()
arrojará una excepción.
Luego usamos el next()
métodos 2 veces. Ahora el Iterator
instancia será entre 3 y 2.
Por lo tanto, el previous()
método devuelve 3.
Java