1 回答
TA贡献1845条经验 获得超8个赞
添加合并功能。例如:
Map<String, List<Fee>> feeAccountMap = ContractList
.stream()
.filter(o -> !o.getStatus().equals(ContractStatus.CLOSED))
.collect(Collectors.toMap(o -> o.getFeeAccount(), o -> {
List<Fee> monthlyFees;
try {
monthlyFees = contractFeeService.getContractMonthlyFees(o);
} catch (Exception e) {
throw new RuntimeException(e);
}
return monthlyFees;
}, (value1, value2) -> value1
));
由于您的值Map似乎是键的函数,因此当您有两个具有相同键的值时,您可以简单地返回其中一个值。
这是假设如果 的两个元素ContractList返回相同的Stringfor getFeeAccount(),则它们彼此相等。
添加回答
举报