2021-10-22

2:对list的特殊处理方法

//1:获取 list对象集合中指定id相同的元素获取第一个匹配的
FofSonChangeEntity oldFofSonData=oldfofSonDatas.stream().filter(t->t.getFundId().equals(extractNewData.getFundId())).findFirst().get();

//2:对fundList进行去重
fundList = fundList.stream().distinct().collect(Collectors.toList());

//3:对对象list根据某一指定关键字段进行去重
List afterTreatmentList=acceptingChargeDataEntities.stream().collect(Collectors.collectingAndThen(Collectors.toCollection(() -> new TreeSet<>(Comparator.comparing(AcceptingChargeDataEntity::getLogId))), ArrayList::new));

//4:获取对象list的所有对象的其中一个字段的集合
List oldListFundId=oldList.stream().map(CrmAnnotationEntity::getFundId).collect(Collectors.toList());

//5:对subPtradeRedempList中的所有对象的 TradeCount 元素 进行求和操作
BigDecimal redempCount = subPtradeRedempList.stream()
.map(x -> x.getTradeCount()) // map,对集合中的元素进行操作
.reduce(BigDecimal.ZERO, BigDecimal::add); // reduce,将上一步得到的结果进行合并得到最终的结果

//https://www.cnblogs.com/xlecho/p/11088281.html

上一篇:RoundingMode 几个参数详解


下一篇:Java精确计算小数(BigDecimal)