Hemos visto muchos ejemplos que manipulan ArrayList, que crean iteradores o iteradores de listas sobre un ArrayList. Pero como podemos realizar una operación tan sencilla como es obtener elemento de un ArrayList.
A priori podríamos pensar que tenemos que recurrir a un iterador para recuperar los elementos mediante el método .next().
Iterator it = al.iterator();
while(it.hasNext())
System.out.println(it.next());
Pero sería muy complicado y nos obligaría a estar iterando sobre una lista.
Por otro lado podríamos pensar que ya que es un array puede ser que tenga el operador corchete [] para acceder a sus elementos.
System.out.println(al[2]);
Esto no es así y el operador corchete no existe dentro de un ArrayList.
Podríamos ser más enrevesados y convertir nuestro ArrayList en un array, para, de estar forma poder acceder mediante el operador corchete.
Object[] nombres = al.toArray();
System.out.println(nombres[2]);
Pero la verdad es que la respuesta es mucho más sencilla y si queremos obtener elemento de un ArrayList la clave reside en utilizar el método .get() sobre el ArrayList, indicándole el índice del elemento que quieres recuperar.
De esta forma, si queremos recuperar el segundo elemento de nuestro ArrayList, nos bastará con escribir el siguiente código:
System.out.println(al.get(1));
Y es que, al igual que todas las colecciones, el ArrayList se empieza a enumerar desde el índice 0 para el primer elemento.
Así que no le des vueltas y utiliza el método .get() para obtener elemento de un ArrayList.