如何检查具有包含元素的列表的对象流是否具有另一个列表中存在的元素

问题描述 投票:0回答:1

我正在学习 Java Streams,这是学校的作业。我尝试了解 Streams 的工作原理,并在互联网上搜索示例和教程,但未能解决这个问题。

所以问题来了。给出了披萨对象流,披萨有名称、价格和配料,这是一个字符串列表。还给出了配料的字符串列表。目标是返回具有任何给定配料的披萨流。

我知道如何检查披萨配料中是否有单一配料

Stream<Pizza> pizzasWithTopping = pizzas.filter(x -> x.toppings().contains(topping));

现在我陷入了如何检查给定的配料列表是否包含披萨配料中的配料的困境。

java stream
1个回答
0
投票

好吧,我找到了一些例子,确实帮助我解决了这个问题。下面是有效的代码。

Stream<Pizza> pizzasWithAnyToppings = pizzas
.filter(x -> x.toppings()
.stream()
.anyMatch(toppings::contains));

© www.soinside.com 2019 - 2024. All rights reserved.