У меня есть объект, который имеет Set
. У каждого Set
объекта есть другой объект, в котором также есть Set
объекта.
class GroupVO {
int id;
Set<MasterVO> master; // This should be changed as Map<masterId, MasterVO>
//getter, setter
}
class MasterVO {
int masterId;
Set<SlaveVO> slave; // This should be changed as Map<slaveId, SlaveVO>
//getter, setter
}
class SlaveVO {
int slaveId;
String title;
String description;
//getter, setter
}
И я хочу преобразовать эти Set
в Map
.
Я могу конвертировать его для первого уровня карты. Но я не знаю, как получить второе преобразование «Set» в Map
.
GroupVO groupVO = new GroupVO();
Map<Integer, MasterVO> masterMap = groupVO.getMaster().stream()
.collect(Collectors.toMap(MasterVO::getMasterId, Function.identity()));
Вместо Function.identity()
мне нужно получить доступ к объекту mastervo
, и в этом объекте мне нужно преобразовать все Set<Slave>
в SlaveMap
Пожалуйста, предложите.
Мне нужно, как,
Map<Integre, MasterVO>
. Если я получу объект MasterVO
, например masterMap.get(101)
, то внутри него должен быть SlaveMap
.