En el último tutorial, discutimos Iterator en Java mediante el cual podemos recorrer una lista o avanzar. Aquí discutiremos ListIterator, que nos permite recorrer la lista en ambas direcciones (hacia adelante y hacia atrás).

Ejemplo de ListIterator

En este ejemplo, atravesamos una ArrayList en ambas direcciones.

import java.util.ArrayList;
import java.util.List;
import java.util.ListIterator;
 
public class ListIteratorExample {
  public static void main(String a[]){
    ListIterator<String> litr = null;
    List<String> names = new ArrayList<String>();
    names.add("Shyam");
    names.add("Rajat");
    names.add("Paul");
    names.add("Tom");
    names.add("Kate");
    //Obtaining list iterator
    litr=names.listIterator();
 
    System.out.println("Traversing the list in forward direction:");
    while(litr.hasNext()){
       System.out.println(litr.next());
    }
    System.out.println("nTraversing the list in backward direction:");
    while(litr.hasPrevious()){
       System.out.println(litr.previous());
    }
  }
}

Producción:

Traversing the list in forward direction:
Shyam
Rajat
Paul
Tom
Kate

Traversing the list in backward direction:
Kate
Tom
Paul
Rajat
Shyam

Nota: podemos usar Iterator para recorrer List y Set, pero usando ListIterator solo podemos atravesar List. Hay muchas otras diferencias entre Iterator y ListIterator, hablaremos de ellas en la próxima publicación.

Métodos ListIterator

1) void add (E e): Inserta el elemento especificado en la lista (operación opcional).
2) booleano hasNext (): devuelve verdadero si este iterador de lista tiene más elementos al recorrer la lista hacia adelante.
3) booleano hasPrevious (): devuelve verdadero si este iterador de lista tiene varios elementos cuando se recorre la lista en la dirección opuesta.
4) E siguiente (): devuelve el siguiente elemento de la lista y avanza la posición del cursor.
5) int nextIndex (): devuelve el índice del elemento que sería devuelto por una llamada posterior a next ().
6) E Anterior (): Devuelve el elemento anterior de la lista y mueve la posición del cursor hacia atrás.
7) int previousIndex (): Devuelve el índice del elemento que sería devuelto por una llamada posterior a previous ().
8) void remove (): elimina de la lista el último elemento devuelto por next () o previous () (operación opcional).
9) conjunto vacío (E e): reemplaza el último elemento devuelto por next () o previous () con el elemento especificado (operación opcional).

leer  Ejemplo del método Java ArrayList remove (Object obj)

Referencia:

ListIterator javadoc

Por avivcas

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *