Cómo crear un nuevo mapa a partir de los valores en un mapa existente
Tener el siguiente mapa original:
G1=[7,8,45,6,9]
G2=[3,9,34,2,1,65]
G3=[6,5,9,1,67,5]
Donde G1, G2 y G3 son grupos de edades de personas, ¿cómo puedo crear un nuevo mapa como este:
45=[7,8,45,6,9]
65=[3,9,34,2,1,65]
67=[6,5,9,1,67,5]
Donde las nuevas claves son la edad máxima de las personas en cada grupo.
He intentado esto:
Map<Integer, List<Integer>> newMap = originalMap.entrySet().stream()
.collect(Collectors.toMap(Collections.max(x -> x.getValue()), x -> x.getValue()));
Pero el compilador me dice: "El tipo de destino de esta expresión debe ser una interfaz funcional" en este fragmento de código:
Collections.max(x -> x.getValue())
Cualquier ayuda con esto será apreciada.