15.3 ITERADORES

 

Llegamos al último post del bloque de ArrayList, espero que os haya quedado claro aunque si tenéis dudas podéis hacérmelo llegar a través de los comentarios del blog o enviándome un correo a amizba@gmail.com.

Utilizar un iterador en Java es un mecanismo que nos permite acceder secuencialmente, es decir, uno tras otro a los elementos de una colección con lo cual es muy útil cuando tú tienes una colección crear un iterador que recorra elemento por elemento. Para hacer esto Java define una interfaz Iterator con una serie de métodos: hasNext(), next() y remove() estos métodos nos permite ir hacia adelante, si hay más elementos o no, incluso eliminar elementos. Esto lo comenzamos a utilizar con el método Iterator() de la clase ArrayList.

Para ver esto vamos a utilizar el ejemplo que hemos estado utilizando en los dos últimos posts anteriores, lo último que vimos es que convertíamos el ArrayList en un array normal:



Vamos a comentar las líneas de código de forma que el método main quede de la siguiente forma:

public static void main(String[] args) {

 

            ArrayList<Empleado> listaEmpleado = new ArrayList<Empleado>();

           

            listaEmpleado.add(new Empleado("Antonio", 25, 1100));

           

            listaEmpleado.add(new Empleado("Carmen", 32, 1800));

           

            listaEmpleado.add(new Empleado("Paco", 45, 2100));

           

            listaEmpleado.add(new Empleado("Susi", 38, 1200));

           

            listaEmpleado.add(new Empleado("Jorge", 28, 1200));

           

            listaEmpleado.add(new Empleado("Raquel", 28, 1200));

           

            listaEmpleado.add(new Empleado("Sonia", 19, 990));

           

            listaEmpleado.add(new Empleado("Celia", 18, 990));

           

            listaEmpleado.add(new Empleado("Amparo", 23, 1090));

           

            listaEmpleado.add(new Empleado("Carlos", 25, 1100));

           

            listaEmpleado.add(new Empleado("Julia", 25, 1100));

           

            listaEmpleado.set(1, new Empleado("Julia", 25, 1100));

           

            listaEmpleado.trimToSize();

 

      }

 

}

Después del método trimToSize() nos creamos el iterador:

Iterator<Empleado> mi_iterador = listaEmpleado.iterator();

Le tenemos que indicar el tipo de objeto que va a contener que es de tipo Empleado a continuación hay que especificar un nombre para el iterador y es igual al ArrayList y utilizamos el método iterator(). El método iterator() nos devuelve un objeto de tipo iterator que lo guardamos en mi_iterador.

Con un bucle while le indicamos si mi_iterador tiene elementos o no, utilizamos el método hashnext(), si los hay con el método next() recorremos esa colección de objetos.

            Iterator<Empleado> mi_iterador = listaEmpleado.iterator();

           

            while(mi_iterador.hasNext()) {

                 

                  System.out.println(mi_iterador.next().dameDatos());

            }

Probamos:



Pues esto ha sido todo en cuanto a los ArrayList os espero en el siguiente bloque. Sed buenos y hasta pronto!

15.2ARRAYLIST II << >> 16.1 INTRODUCCIÓN PROGRAMACIÓN GENÉRICA



No hay comentarios:

Publicar un comentario