【发布时间】:2018-11-09 08:29:31
【问题描述】:
我了解如何收集到List,但不知道
我如何将过滤对象的一个参数作为String 返回。
fee = new BigDecimal(fees
.stream()
.filter(p -> p.getTodate().isAfter(LocalDateTime.now()))
.filter(p -> p.getFromdate().isBefore(LocalDateTime.now()))
.filter(p -> p.getId().equals(id))
return fee;
我首先检查费用是否是最新的,因为可能会有即将收取的费用和不再有效的费用。然后我将 id 与剩余费用相匹配。 但是最后一个过滤器和返回之间缺少代码。
我只想为BigDecimal 构造函数从Stream 对象(p.getFee)返回String。
我知道过滤后只剩下一个Stream 对象。
【问题讨论】:
-
如果您希望收集的流中有单个元素或 0 个元素,您应该明确处理这种情况,因为收集中的元素超过 1 个。
标签: java java-8 java-stream