feed twitter facebook LinkedIn facebook

Java » Recorrer una lista hacia atrás en Java

Julio 19, 2007 por Víctor Cuervo . 18098 visitas 8 Comentarios Imprimir Imprimir

Lo más normal es que queramos recorrer una lista de inicio a fin. Pero, quien nos dice que no queramos hacer esto al revés. Es verdad que una opción sería dar la vuelta a la lista y recorrerla normalmente (como explica el artículo Invertir una lista).

Si para recorrer una lista, en Java, hacia delante nos basamos en el método .next() para recorrerla hacía atrás nos basaremos en el método .previous().

Pero antes de todo esto lo que tenemos que hacer es obtener un iterador sobre la lista. El iterador lo obtendremos del último elemento de la lista. El último elemento de la lista nos lo dará el método .size().

ListIterator iter = list.listIterator(list.size());

Controlaremos el inicio de la lista con el método .hasPrevious().

while (iter.hasPrevious())
      System.out.println(iter.previous());

Visualizar el ejemplo | Descargar el código

tags: ,

Artículos relacionados:

8 comentarios »

Redifusión RSS de los comentarios de la entrada. TrackBack URI

  1. DarkGenki
    Agosto 30, 2007 #

    Muchas Gracias por el código, me fue muy útil.

    Ahora tengo que ver como usar un método de lo retornado :)

  2. rober
    Septiembre 29, 2007 #

    holas a todos …. ahi va mi pregunta:
    como puedo borrar los datos de un JList ; y volverlos a cargar con los datos insertados en mi base de datos….LO KIERO VOLVER A CARGAR ASI ME REFRESCA el JList…. por favor si alguien lo sabe ….

  3. Carlos
    Abril 11, 2008 #

    Hola. No se de donde habeis sacado el metodo .previous(). Estoy tratando de utilizarlo y java no me lo reconoce :S.

    Sabeis por que puede ser??

    Gracias

  4. Junior Romero
    Julio 15, 2008 #

    Hola a todos, necesito crear 2 metodos uno que recorra hacia adelante y otro hacia atras, en un ArrayList y que me regrese el objeto que se encuentre en esa posicion

    lo hice de este modo
    for (i=1; i<lista.size(), i++)
    obtener(i);

    el problema es k recorre todo el array y me devuelve el ultimo objeto.

    como lo corrigo?

  5. anisol
    Marzo 12, 2009 #

    necesito un metodo que me ayude a recorrer un vector entero pero que no se demre tanto en haceerlo es que con el for se demora un resto y ya intente con el iterador pero no me deja usarlo sino con String… porfa..

  6. cheryl
    Febrero 25, 2010 #

    hola!
    necesito crear un boton de atras y otro de adelante para mi aplicacion java. tambien tengo que poner otros botones q me lleven al principio y al final de los datos guardados en mi array.
    gracias

  7. cheryl
    Febrero 25, 2010 #

    hola!
    necesito crear un boton de atras y otro de adelante para mi aplicacion java. tambien tengo que poner otros botones q me lleven al principio y al final de los datos guardados en mi array.

    muchas gracias

  8. fran
    Marzo 22, 2010 #

    gracias por el tutorial

Deje un comentario

XHTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

*