public static void main(String[] args) { List<String> alumnos=new ArrayList<String>(); alumnos.add("Eva"); alumnos.add(""); alumnos.add("María"); alumnos.add("Rosa"); Collections.addAll(alumnos, "juan","","Pep"); System.out.println(alumnos); List<String> alumnosTrim=arrayTrim(alumnos); System.out.println(alumnosTrim); Collections.shuffle(alumnosTrim); System.out.println(alumnosTrim); Collections.sort(alumnosTrim); System.out.println(alumnosTrim); } // Tanto lo que devuelvo como el parámetro es de tipo List public static List<String> arrayTrim(List<String> lista){ List<String> res=new ArrayList<String>(); for(String el:lista) { if (el!="") { res.add(el); } } return res; }
Otro ejemplo:
public static void main(String[] args) { // ArrayList de Alumnos, es decir de una clase propia List<Alumno> alumnos=new ArrayList<Alumno>(); // Añadir creandolos al vuelo alumnos.add(new Alumno("Eva",6)); alumnos.add(new Alumno("Rosa",7)); alumnos.add(new Alumno("Pep",3)); alumnos.add(new Alumno("Ana",4)); // Añadir creando una variable y añadiendo esa variable Alumno foo=new Alumno("Rosa",8); alumnos.add(foo); // Si he sobreescrito el toString lo puedo ver todo con un // simple print System.out.println(alumnos); List<Alumno> aprobados=aprobados(alumnos); System.out.println(aprobados); } public static List<Alumno> aprobados(List<Alumno> alumnos){ List<Alumno> res=new ArrayList<Alumno>(); for(Alumno al:alumnos) { if (al.getNota()>=5) { res.add(al); } } return res; }