package com.trifulcas.colecciones; import java.util.ArrayList; import java.util.Collections; import java.util.HashMap; public class UsosHashMap { public static void main(String[] args) { ArrayList<String> usuarios=new ArrayList<>(); Collections.addAll(usuarios, "Ana","Eva","Juan","Rosa","Pep","Sara"); System.out.println(generaClaves(usuarios)); HashMap<String,ArrayList<Integer>> hash02=new HashMap<>(); hash02.put("Ana", new ArrayList<>()); hash02.get("Ana").add(5); hash02.get("Ana").add(7); hash02.get("Ana").add(9); hash02.put("Eva", new ArrayList<>()); hash02.get("Eva").add(6); hash02.get("Eva").add(8); hash02.get("Eva").add(10); System.out.println(getMedias(hash02)); } // Una función a la que le pasamos un arraylist de nombres y nos genera // Un diccionario con la clave el nombre y un valor que será una contraseña // basada en el nombre, la primera letra del nombre, el índice del arraylist // y la última letra del nombre // generaClaves(ArrayList) static HashMap<String,String> generaClaves(ArrayList<String> usuarios){ HashMap<String,String> res=new HashMap<String,String>(); for (int i=0;i<usuarios.size();i++) { String usuario=usuarios.get(i); String password=usuario.substring(0,1)+i+usuario.substring(usuario.length()-1); res.put(usuarios.get(i), password); } return res; } // Una función a la que le pasamos un diccionario con el nombre de un alumno // Y el valor un arraylist de notas y nos devuelve el hashmap con las medias static HashMap<String,Double> getMedias(HashMap<String,ArrayList<Integer>> notas){ HashMap<String,Double> res=new HashMap<String,Double>(); for(String alumno:notas.keySet()) { double suma=0; for(int nota: notas.get(alumno)) { suma+=nota; } res.put(alumno, suma/notas.get(alumno).size()); } return res; } }