Introducción a ArrayList
ArrayList
es una clase de la colección de Java que proporciona una implementación redimensionable de la interfaz List
. A diferencia de los arrays tradicionales, un ArrayList
puede crecer y reducirse dinámicamente según sea necesario. Esto lo hace muy útil cuando no se conoce de antemano el tamaño de la colección.
Características de ArrayList
- Redimensionable: Puede crecer y reducirse dinámicamente.
- Acceso rápido: Permite acceso aleatorio a los elementos.
- No sincronizado: No es seguro para el uso en múltiples hilos sin sincronización explícita.
- Permite elementos duplicados: Puede contener elementos duplicados y
null
.
Sintaxis Básica
Para utilizar ArrayList
, primero debes importarlo desde el paquete java.util
.
Creación de un ArrayList
En este ejemplo, hemos creado un ArrayList
que almacenará elementos de tipo String
.
Operaciones Básicas
Añadir Elementos
Acceder a Elementos
String elemento = lista.get(0); // Accede al primer elemento System.out.println(elemento); // Imprime "Elemento 1"
Modificar Elementos
Eliminar Elementos
Tamaño del ArrayList
Iterar sobre un ArrayList
Ejemplo Completo
import java.util.ArrayList; public class EjemploArrayList { public static void main(String[] args) { // Crear un ArrayList ArrayList<String> lista = new ArrayList<>(); // Añadir elementos lista.add("Elemento 1"); lista.add("Elemento 2"); lista.add("Elemento 3"); // Acceder a un elemento System.out.println("Primer elemento: " + lista.get(0)); // Modificar un elemento lista.set(1, "Elemento Modificado"); // Eliminar un elemento lista.remove(0); // Tamaño del ArrayList System.out.println("Tamaño del ArrayList: " + lista.size()); // Iterar sobre el ArrayList for (String item : lista) { System.out.println(item); } } }
Ejercicios Prácticos
Ejercicio 1: Crear y Manipular un ArrayList
- Crea un
ArrayList
de tipoInteger
. - Añade los números del 1 al 10 al
ArrayList
. - Imprime todos los elementos del
ArrayList
. - Elimina el número en la posición 5.
- Modifica el número en la posición 2 para que sea 100.
- Imprime el tamaño del
ArrayList
.
Solución
import java.util.ArrayList; public class EjercicioArrayList { public static void main(String[] args) { // Crear un ArrayList de Integer ArrayList<Integer> numeros = new ArrayList<>(); // Añadir números del 1 al 10 for (int i = 1; i <= 10; i++) { numeros.add(i); } // Imprimir todos los elementos System.out.println("Elementos del ArrayList: " + numeros); // Eliminar el número en la posición 5 numeros.remove(5); // Modificar el número en la posición 2 para que sea 100 numeros.set(2, 100); // Imprimir el tamaño del ArrayList System.out.println("Tamaño del ArrayList: " + numeros.size()); // Imprimir todos los elementos después de las modificaciones System.out.println("Elementos del ArrayList después de las modificaciones: " + numeros); } }
Ejercicio 2: Buscar Elementos en un ArrayList
- Crea un
ArrayList
de tipoString
. - Añade los nombres "Ana", "Luis", "Carlos", "Marta" al
ArrayList
. - Verifica si el nombre "Carlos" está en el
ArrayList
. - Imprime la posición del nombre "Marta" en el
ArrayList
.
Solución
import java.util.ArrayList; public class BuscarElementosArrayList { public static void main(String[] args) { // Crear un ArrayList de String ArrayList<String> nombres = new ArrayList<>(); // Añadir nombres nombres.add("Ana"); nombres.add("Luis"); nombres.add("Carlos"); nombres.add("Marta"); // Verificar si "Carlos" está en el ArrayList if (nombres.contains("Carlos")) { System.out.println("Carlos está en el ArrayList."); } else { System.out.println("Carlos no está en el ArrayList."); } // Imprimir la posición de "Marta" int posicion = nombres.indexOf("Marta"); System.out.println("Marta está en la posición: " + posicion); } }
Conclusión
En esta sección, hemos aprendido sobre la clase ArrayList
en Java, cómo crear y manipular un ArrayList
, y cómo realizar operaciones básicas como añadir, acceder, modificar y eliminar elementos. También hemos visto ejemplos prácticos y ejercicios para reforzar los conceptos aprendidos. En el siguiente tema, exploraremos LinkedList
, otra implementación de la interfaz List
en Java.
Curso de Programación en Java
Módulo 1: Introducción a Java
- Introducción a Java
- Configuración del Entorno de Desarrollo
- Sintaxis y Estructura Básica
- Variables y Tipos de Datos
- Operadores
Módulo 2: Flujo de Control
Módulo 3: Programación Orientada a Objetos
- Introducción a la POO
- Clases y Objetos
- Métodos
- Constructores
- Herencia
- Polimorfismo
- Encapsulamiento
- Abstracción
Módulo 4: Programación Orientada a Objetos Avanzada
Módulo 5: Estructuras de Datos y Colecciones
Módulo 6: Manejo de Excepciones
- Introducción a las Excepciones
- Bloque Try-Catch
- Throw y Throws
- Excepciones Personalizadas
- Bloque Finally
Módulo 7: Entrada/Salida de Archivos
- Lectura de Archivos
- Escritura de Archivos
- Flujos de Archivos
- BufferedReader y BufferedWriter
- Serialización
Módulo 8: Multihilo y Concurrencia
- Introducción al Multihilo
- Creación de Hilos
- Ciclo de Vida de un Hilo
- Sincronización
- Utilidades de Concurrencia
Módulo 9: Redes
- Introducción a las Redes
- Sockets
- ServerSocket
- DatagramSocket y DatagramPacket
- URL y HttpURLConnection