gpt4 book ai didi

java - 访问列表中所有对象的字段

转载 作者:搜寻专家 更新时间:2023-11-01 03:17:21 26 4
gpt4 key购买 nike

我有一个 List<Foo> , 其中Fooclass包含 String名为 name 的字段.我想知道 List 是否包含 Foo对象是 name等于 "bar" .

如果不遍历每个对象并逐个测试它们是否可行?

我正在使用 Java 8。

最佳答案

您可以使用并行流返回 Optional<String>它可能为空也可能不为空,具体取决于“bar”是否作为 Foo 的属性存在。 List<Foo> 中的对象:

list.parallelStream()
.map(Foo::getName)
.filter(s -> s.equals("bar"))
.findAny();

这仍然遍历 List<Foo> ,但在最坏的情况下,O(n/# of threads used)

另一种选择是按 name 对列表进行排序属性,然后进行二分搜索,但很可能仍然需要花费一些时间来对其进行排序。

关于java - 访问列表中所有对象的字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45019088/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com