Map<String, List<对象>> collect = list.stream().collect(Collectors.groupingBy(对象::属性字段))
以属性字段分组,生成map
栗子:
Map<Integer, List<DataVO>> collect = list.stream().collect(Collectors.groupingBy(DataVO::getNum));
List<List<Data>> dataList = new ArrayList<>();
collect.forEach((k,v)->{
List<Data> strList = new ArrayList<>();
Data data = new Data();
data.setTratu(String.valueOf(k+1));
strList.add(data);
v.forEach((c)->{
Data data2 = new Data();
data2.setTratu(c.getTratu().toString());
strList.add(data2);
});
// data.setTratu(String.valueOf(k));
dataList.add(strList);
});
return dataList;