//方法传递的参数根据需要来,我自己改写了
public void buildCalcVehcileD(List<Vehicle> vehicleListByTypeClass, LinkedHashSet<String> brands, List<SelectCalculatorVehicleDTO> calcVehicleDs){
//使用set去重
Map<String, Object> resultMap = new HashMap<String, Object>();
Set<Object> setTmp = new HashSet<Object>();
for (Vehicle tmp : vehicleListByTypeClass) {
setTmp.add(tmp.getModelYear()); //我是通过modelYear这个属性获取不同的list
}
Iterator<Object> it = setTmp.iterator();
while (it.hasNext()) {
String oneSetTmpStr = (String) it.next();
List<Vehicle> oneSetTmpList = new ArrayList<>();
for (Vehicle tmp : vehicleListByTypeClass) {
String oneMapValueStr = tmp.getModelYear();
if (oneMapValueStr.equals(oneSetTmpStr)) {
oneSetTmpList.add(tmp);
}
}
resultMap.put(oneSetTmpStr, oneSetTmpList);
}
}
参考:https://my.oschina.net/u/4362704/blog/3308382