小编ni *_*wen的帖子

在一个java流lambda函数中求和不同的值

我有一个用例需要在这个对象中总结不同的字段,所以我这样编码,我可以把它放在一个流中吗?

int totalUnits = records.stream()
        .mapToInt(DynamoSalesAggregateSummaryRecord::getUnits).sum();
int totalReturns = records.stream()
        .mapToInt(DynamoSalesAggregateSummaryRecord::getReturns).sum();
int totalCancellations = records.stream()
        .mapToInt(DynamoSalesAggregateSummaryRecord::getCancellations).sum();
BigDecimal totalRevenue = records.stream()
        .map(DynamoSalesAggregateSummaryRecord::getRevenue)
        .reduce(BigDecimal.ZERO, BigDecimal::add);
BigDecimal totalRoyalties = records.stream()
        .map(DynamoSalesAggregateSummaryRecord::getRoyalties)
        .reduce(BigDecimal.ZERO, BigDecimal::add);
Run Code Online (Sandbox Code Playgroud)

java lambda java-8 java-stream

1
推荐指数
1
解决办法
106
查看次数

标签 统计

java ×1

java-8 ×1

java-stream ×1

lambda ×1