我有一个具有以下结构的HashMap:
Map<Object, List<OtherObject>>
我想将其转换为:
List<FinalObject>
是FinalObject:
public class FinalObject {
private Object object;
private List<OtherObject> otherObject;
}
假设你有一个像这样的构造函数:
public FinalObject(Object obj, List<OtherObject> list) {
this.object = obj;
this.otherObject = list;
}
然后你可以这样做:
List<FinalObject> newList = map.entrySet()
.stream().map(e -> new FinalObject(e.getKey(), e.getValue()))
.collect(Collectors.toList());
相应的forEach
方法将是:
List<FinalObject> finalList = new ArrayList<>();
map.forEach((k,v) -> finalList.add(new FinalObject(k, v)));