list.stream()里参数金额汇总
时间: 2023-07-21 07:41:34 浏览: 94
使用List和Stream完成统计计算.zip
如果您的意思是想对 List 中的元素进行筛选,并且只对符合条件的元素进行金额汇总,可以使用 Stream API 中的 `filter` 方法和 `map` 方法,示例代码如下:
```
List<Order> orders = Arrays.asList(
new Order("order1", new BigDecimal("10.0")),
new Order("order2", new BigDecimal("20.0")),
new Order("order3", new BigDecimal("30.0"))
);
BigDecimal totalAmount = orders.stream()
.filter(order -> order.getAmount().compareTo(new BigDecimal("20.0")) > 0) // 筛选出金额大于 20 的订单
.map(Order::getAmount) // 提取订单金额
.reduce(BigDecimal.ZERO, BigDecimal::add); // 对金额进行累加
System.out.println(totalAmount); // 输出 30.0
```
在上述代码中,我们定义了一个 `Order` 类,其中包含订单名称和订单金额两个属性。然后创建了一个包含三个订单的 List。接着使用 Stream API 中的 `filter` 方法筛选出金额大于 20 的订单,再使用 `map` 方法提取订单金额,最后使用 `reduce` 方法对金额进行累加。最终得到的 `totalAmount` 就是符合条件的订单的金额总和。
阅读全文