Adriano:
Tengo POJO objeto plano:
class FamilyInformation {
String house;
String familyMember;
}
con datos como este:
[{
house: "houseName1",
familyMember: "Son"
},
{
house: "houseName1",
familyMember: "Mom"
},
{
house: "houseName1",
familyMember: "Dad"
}]
Y quiero convertirlo en objeto POJO jerárquica:
class House {
String houseName;
List<FamilyMember> familyMembers;
}
class FamilyMember {
String familyMember;
}
Toda la información que he encontrado es para convertirlo en un mapa. Pero yo quiero tener List<House>
que contenga List<FamilyMember>
alguna idea de lo que debo hacer?
Hadi J:
Prueba este
Map<String,List<FamilyMember>> map = list
.stream()
.collect(
Collectors.groupingBy(
FamilyInformation::getHouseName,
Collectors.mapping(
family -> new FamilyMember(family.getFamilyMember()),
Collectors.toList()
)
)
);
y entonces
List<House> result = map.entrySet()
.stream()
.map(e -> new House(e.getKey(), e.getValue()))
.collect(Collectors.toList());