ArrayList
ArrayList<E> es una clase en Java que proporciona una lista dinámica de tamaño variable. A diferencia de los arrays, que tienen un tamaño fijo, una ArrayList puede redimensionarse automáticamente a medida que agregas o eliminas elementos, por lo que es una de las estructuras de datos más usadas para almacenar listas de elementos en Java.
Las características principales de ArrayList son:
- Tamaño dinámico → Un
ArrayListpuede aumentar o reducir su tamaño automáticamente según se agreguen o eliminen elementos. - Acceso rápido → Permite el acceso a los elementos mediante un índice.
- Permite duplicados y nulos → Un
ArrayListpermite elementos duplicados y admitenullcomo valor.
Creación de ArrayList
Para crear un ArrayList es necesario importar la clase desde el paquete java.util. Aquí tienes algunos ejemplos de creación:
import java.util.ArrayList;
ArrayList<String> nombres = new ArrayList<String>(); // ArrayList vacío de Strings
ArrayList<Integer> numeros = new ArrayList<Integer>(10); // ArrayList con capacidad inicial de 10
Principales métodos de ArrayList
Un ArrayList ofrece una variedad de métodos para manipular y acceder a sus elementos. A continuación, presento los métodos más comunes y útiles que son comunes para todas las listas:
-
Agregar elementos:
void add(E elemento)Agrega un elemento al final de la lista. También puedes especificar un índice para agregar el elemento en una posición específicavoid add(int posición, E elemento)nombres.add("Ana"); // Agrega al final
nombres.add(0, "Carlos"); // Agrega en el índice 0 -
Obtener elementos:
E get(int indice)Obtiene el elemento en un índice específico.String nombre = nombres.get(0); // Retorna "Carlos" -
Actualizar elementos:
set(int indice, E elemento)Modifica el valor de un elemento en un índice específico.nombres.set(1, "Lucía"); // Cambia "Ana" por "Lucía" en el índice 1 -
Eliminar elementos:
E remove(int indice)Elimina el elemento en un índice especificado o el primer elemento que coincida con un valorE remove(E elemento).nombres.remove(0); // Elimina "Carlos"
nombres.remove("Lucía"); // Elimina "Lucía" si existe -
Verificar si contiene un elemento:
boolean contains(Object obj)Comprueba si la lista contiene un elemento específico.boolean existe = nombres.contains("Ana"); // Retorna true si "Ana" está en la lista -
Obtener el tamaño de la lista:
int size()Devuelve el número de elementos en la lista.int tamaño = nombres.size(); // Retorna el tamaño de la lista -
Comprobar si la lista está vacía:
boolean isEmpty()Comprueba si la lista está vacía.boolean estaVacia = nombres.isEmpty(); // Retorna true si no hay elementos -
Limpiar la Lista:
void clear()Elimina todos los elementos de la lista.nombres.clear(); // La lista queda vacía -
Obtener el Índice de un Elemento:
int indexOf(E element)Retorna el índice de la primera aparición de un elemento.int indice = nombres.indexOf("Lucía"); // Retorna el índice de "Lucía" -
Convertir un
ArrayLista array:E[] toArray()Convierte unArrayListen un array. Útil si necesitas un array regular para trabajar con métodos que requieran arrays.String[] array = nombres.toArray(new String[0]);