public static void main(String[] args) {
// Me creo un map con alumnos
Map<String, Alumno> alumnos = new HashMap<String, Alumno>();
alumnos.put("Ana", new Alumno("Ana Pi", 7));
alumnos.put("Eva", new Alumno("Eva González", 8));
alumnos.put("Pep", new Alumno("José Bou", 6));
alumnos.put("Rosa", new Alumno("Rosa", 3));
alumnos.put("Juan", new Alumno("Juan", 4));
System.out.println(mejorAlumno(alumnos));
System.out.println(aprobados(alumnos));
}
// Paso como parámetro un hashmap y devuelvo un resultadop
public static Alumno mejorAlumno(Map<String, Alumno> alumnos) {
Alumno res = null;
for (Alumno alumno : alumnos.values()) {
if (res == null || alumno.getNota() > res.getNota()) {
res = alumno;
}
}
return res;
}
// Paso como parámetro un hashmap y devuelvo otro hashmap
// Filtrando los aprobados
public static Map<String, Alumno> aprobados(Map<String, Alumno> alumnos) {
Map<String, Alumno> res = new HashMap<String, Alumno>();
// Recorrer el mapa en un par clave valor y filtrar los alumnos
for (Map.Entry<String, Alumno> alumno : alumnos.entrySet()) {
if (alumno.getValue().getNota() >= 5) {
res.put(alumno.getKey(), alumno.getValue());
}
}
return res;
}