// Sintaxis ArrayList<Tipo de datos> nombre = new ArrayList<Tipo>() ArrayList<String> lista = new ArrayList<String>(); // Lo mismo pero no especifico tipo ArrayList<String> lista2 = new ArrayList<>(); // Lo mismo pero usando la clase abstracta List<String> lista3=new ArrayList<String>(); // Muy importante: el tipo tiene que ser una clase //ArrayList<int> enteros=new ArrayList<int>(); // Utilizar unas clases 'wrapper' (envolventes) // Que son lo mismo que los tipos primitivos pero en clase ArrayList<Integer> enteros=new ArrayList<Integer>(); ArrayList<Boolean> boleanos=new ArrayList<Boolean>(); ArrayList<Double> decimales=new ArrayList<Double>(); // No especificamos tamaño, porque es dinámico // Yo añado elementos con add, los que quiera enteros.add(5); enteros.add(9); enteros.add(13); System.out.println(enteros); // Puedo recorrer con un for : for(Integer i:enteros) { System.out.println(i); } // Con un for normal usando el size (tamaño) for(int i=0;i<enteros.size();i++) { // con get obtenemos el elemento en esa posición System.out.println(enteros.get(i)); } // Podemos usar el foreach enteros.forEach(x->System.out.println(x)); ArrayList<LocalDate> fechas= new ArrayList<LocalDate>(); fechas.add(LocalDate.now()); // Añadir en un índice determinado enteros.add(1,666); System.out.println(enteros); // Eliminamos el elemento de la posición 2 enteros.remove(2); System.out.println(enteros); // Si un elemento está dentro el arraylist System.out.println(enteros.contains(5)); // true System.out.println(enteros.contains(90)); // false // Buscar la posición de un elemento System.out.println(enteros.indexOf(13)); // 2 System.out.println(enteros.indexOf(130)); // -1 porque no lo encuentra