How can I write the logic to obtain a Map<String, Map<String, String>> using streams?
Here is the code I have tried :
public Map<String, Map<String, String>> getData(Set<String> Ids) {
List<Events> events = repository.findAllByIdIn(Ids);
int i = 0;
return events.stream()
.sorted(Comparator.comparing(Events::getMajor).thenComparing(Events::getMinor))
.collect(Collectors.groupingBy(Events::getId,
//Error-Cannot resolve method 'getMajor()'
Collectors.mapping(cae -> cae.getMajor() + "." + cae.getMinor(),
cae.getDates().get(i).getEndDate() != null ? "Predicted" : "Not Predicted"),
Collectors.toMap())));//Error-Cannot resolve method 'toMap()'
}
So how do I loop through a map inside another map?
groupingBymust be aCollector, but you provided aFunction