La clase ArrayList en Java, es una clase que permite almacenar datos en memoria de forma similar a los Arrays, con la ventaja de que el numero de elementos que almacena, lo hace de forma dinámica, es decir, que no es necesario declarar su tamaño como pasa con los Arrays. Para todos aquellos que hayáis estudiado en alguna asignatura las estructuras de datos de las Pilas, Colas, Listas, Arboles (AVL, B, B+, B*) etc. hay decir que los ArrayList "tiran por tierra" toda la teoria que hay detrás de esas estructuras de datos ya que los ArrayList nos permiten añadir, eliminar y modificar elementos (que pueden ser objetos o elementos atómicos) de forma trasparente para el programador.
Agregar articulos
La
ArrayList
clase tiene muchos métodos útiles. Por ejemplo, para agregar elementos al ArrayList
, use el add()
método:
Ejemplo
import java.util.ArrayList;
public class MyClass {
public static void main(String[] args) {
ArrayList<String> cars = new ArrayList<String>();
cars.add("Volvo");
cars.add("BMW");
cars.add("Ford");
cars.add("Mazda");
System.out.println(cars);
}
}
Acceder a un artículo
Para acceder a un elemento en el
ArrayList
, use el get()
método y consulte el número de índice:
Ejemplo
cars.get(0);
Cambiar un articulo
Para modificar un elemento, use el
set()
método y consulte el número de índice:
Ejemplo
cars.set(0, "Opel");
Quitar un articulo
Para eliminar un elemento, use el
remove()
método y consulte el número de índice:
Ejemplo
cars.remove(0);
Eliminar un articulo
Para eliminar todos los elementos en el
ArrayList
, use el clear()
método:
Ejemplo
cars.clear();
Tamaño de ArrayList
Para averiguar cuántos elementos tiene un ArrayList, use el
size
método:
Ejemplo
cars.size();
Recorrer a través de un ArrayList
Recorra los elementos de a
ArrayList
con un for
bucle y use el size()
método para especificar cuántas veces debe ejecutarse el bucle:
Ejemplo
public class MyClass {
public static void main(String[] args) {
ArrayList<String> cars = new ArrayList<String>();
cars.add("Volvo");
cars.add("BMW");
cars.add("Ford");
cars.add("Mazda");
for (int i = 0; i < cars.size(); i++) {
System.out.println(cars.get(i));
}
}
}
Otros tipos
Los elementos en un ArrayList son en realidad objetos. En los ejemplos anteriores, creamos elementos (objetos) de tipo "Cadena". Recuerde que una Cadena en Java es un objeto (no un tipo primitivo). Para utilizar otros tipos, tales como int, debe especificar una clase de contenedor equivalente:
Integer
. Para otros tipos primitivos, use: Boolean
para boolean, Character
para char, Double
para doble, etc:
Ejemplo