List<SpringMain> collect = objects2.stream()
.collect(Collectors.toMap(
SpringMain::getCropsName,
o -> new SpringMain(o.getCropsName(), o.getPlanArea(), o.getFinishArea()),
(o1, o2) -> new SpringMain(o1.getCropsName(), roundToTwoDecimalPlaces(o1.getPlanArea() + o2.getPlanArea()), roundToTwoDecimalPlaces(o1.getFinishArea() + o2.getFinishArea()))
)).values().stream().collect(Collectors.toList());
//清空原有的集合
objects2.clear();
//将新集合塞进去
objects2.addAll(collect);
计算和并保留两位小数
private static double roundToTwoDecimalPlaces(double value) {
DecimalFormat df = new DecimalFormat("#.##");
return Double.parseDouble(df.format(value));
}