Como agrupar elementos de uma lista por elementos de outra em Java 8
Eu tenho o seguinte problema: Dadas essas classes,
class Person {
private String zip;
...
public String getZip(){
return zip;
}
}
class Region {
private List<String> zipCodes;
...
public List<String> getZipCodes() {
return zipCodes;
}
}
usando a API Java 8 Stream, como obtenho umMap<Person, List<Region>>
com base em se oRegion
contém issoPerson
CEP? Em outras palavras, como agrupo as regiões pelas pessoas cujos códigos postais pertencem a essas regiões?
Eu já fiz isso no Java 7 da maneira antiga, mas agora tenho que migrar o código para aproveitar os novos recursos do Java 8.
Obrigado,
Impeto