ArrayList

Unidad 4: Estructuras Dinámicas

Añadir Elementos (Create)

El método add() permite insertar elementos al final o en una posición específica.

// 1. Crear la lista (de Strings)
ArrayList<String> lista = new ArrayList<>();

// 2. Añadir al final
lista.add("Java");
lista.add("Python");

// 3. Insertar en medio (desplaza el resto)
lista.add(1, "C++"); 
// Resultado: [Java, C++, Python]

Simulación Visual

Leer Elementos (Read)

Usamos get(indice) para recuperar el valor de una posición. ¡Recuerda que empieza en 0!

// Lista: ["Java", "C++", "Python"]

// Obtener el primer elemento
String primero = lista.get(0); 
// 'primero' vale "Java"

// Obtener el último elemento
String ultimo = lista.get(lista.size() - 1);
// 'ultimo' vale "Python"

Acceso por Índice

Java0
C++1
Python2

Actualizar (Update)

El método set(indice, nuevoValor) sustituye el contenido de una celda.

// Lista original: ["Java", "C++", "Python"]

// Cambiar "C++" por "Kotlin" en índice 1
lista.set(1, "Kotlin");

// Resultado: ["Java", "Kotlin", "Python"]
// ¡El tamaño de la lista NO cambia!

Modificar Valor

Java0
C++1
Python2

Borrar (Delete)

Usa remove() para eliminar por índice o por objeto. Los huecos se cierran automáticamente.

// Lista: ["Java", "Kotlin", "Python", "JS"]

// 1. Borrar por índice (borra "Kotlin")
lista.remove(1);
// Resultado: ["Java", "Python", "JS"]

// 2. Borrar por objeto (borra "Java")
lista.remove("Java");
// Resultado: ["Python", "JS"]

Eliminar y Reajustar

¡Fíjate cómo se mueven los índices!

Métodos Útiles

Otras herramientas esenciales para trabajar con listas.

Método Descripción Ejemplo
size() Devuelve el número de elementos (int). int n = lista.size();
contains(Object o) ¿Está el elemento en la lista? (boolean). if (lista.contains("Java"))
indexOf(Object o) Busca la posición. Retorna -1 si no está. int pos = lista.indexOf("C++");
isEmpty() ¿Está vacía la lista? (boolean). if (lista.isEmpty())
clear() Elimina TODOS los elementos. lista.clear();