https://www.w3schools.com/java/java_arraylist.asp
https://www.arquitecturajava.com/java-arraylist-for-y-sus-opciones/
https://www.geeksforgeeks.org/arraylist-in-java/
https://www.programiz.com/java-programming/arraylist
https://www.javatpoint.com/java-arraylist
// Definición de ArrayList // Lo que está entre '<' y '>' es un tipo genérico // Esto es correcto y lo preferido List<String> lista = new ArrayList<String>(); // Esto es completamente correcto ArrayList<String> otraLista = new ArrayList<String>(); // Para añadir 'add'. Si no especificamos posición, se añade al final // Si especificamos posición se añade en esa posición lista.add("Eva"); // ['Eva'] lista.add("Juan"); // ['Eva','Juan'] lista.add(1, "Ana");// ['Eva','Ana','Juan'] lista.add(0, "Pep");// ['Pep','Eva','Ana','Juan'] // Al imprimir se muestra de una manera bastante visual System.out.println(lista); // Con get obtenemos el elemnto en esa posición System.out.println(lista.get(0)); // Cambiar el elemento que está en una posición determinada lista.set(1, "Pep"); // ['Pep','Pep','Ana','Juan'] System.out.println(lista); // Nos elimina el elemento en la posición 1 lista.remove(1); // ['Pep','Ana','Juan'] System.out.println(lista); // Nos elimina el elemento que vale "Ana" lista.remove("Ana"); // ['Pep','Juan'] System.out.println(lista); lista.add("Eva"); lista.add("Juan"); lista.add(1, "Ana"); // Recorrer con un foreach for (String l : lista) { System.out.println(l); } // Recorrer con un for normal for(int i=0;i<lista.size();i++) { System.out.println(lista.get(i)); } // contains nos dice si un elemento está o no está en el arraylist // true or false System.out.println(lista.contains("Eva")); // true // indexOf nos dice la posición del elemento en el arraylist System.out.println(lista.indexOf("Juan")); // 2 System.out.println(lista.indexOf("Rosa")); // -1 // Podemos ordenar usando la utilidad sort de la clase Collections Collections.sort(lista); System.out.println(lista);