【发布时间】:2019-11-07 15:10:03
【问题描述】:
我正在尝试像这样使用 Java 8 Stream API mapToDouble 方法:
BigDecimal totalCost = order.getOrderlineList().stream()
.mapToDouble(Orderline::getPrice)
.sum();
问题在于Orderline::getPrice 返回的是BigDecimal,而不是Double。因此上述尝试编译失败(方法参考中的返回类型错误:无法将 java.math.BigDecimal 转换为 doubele)。
看到Orderline#price 是BigDecimal,我如何使用Stream API(以及mapToDouble 或类似的东西)来获取我的totalCost?
【问题讨论】:
标签: java java-8 sum java-stream bigdecimal