【发布时间】:2020-08-05 14:09:06
【问题描述】:
我正在尝试制作一个过滤器,用于过滤具有相同 2 个属性的不同对象。
我知道还有其他方法可以用 distinct 来做到这一点,但我想用过滤器内的过滤器来做到这一点。我有以下代码:
filteredOrderLines.stream().filter(o -> filteredOrderLines.stream().filter(o2 -> o.getOrderId().equals(o2.getOrderId()) && o.getProductId().equals(o2.getProductId()))).collect(Collectors.toList());
我明白了:
Bad return type in lambda expression: Stream<OrderLineDTO> cannot be converted to boolean
【问题讨论】:
-
filteredOrderLines.stream().filter(o -> filteredOrderLines.stream()您在需要过滤的流中传递了集合。 -
消息在某种程度上不是自我解释
Stream<OrderLineDTO> cannot be converted to boolean吗?
标签: java filter java-stream