【发布时间】:2020-07-15 19:42:06
【问题描述】:
我正在尝试使用流从集合中仅选择名称:这些是条目:
Person{id=4, name=E, color=red}]
[Person{id=0, name=A, color=blue}
Person{id=1, name=B, color=green}
Person{id=2, name=D, color=pink}
Person{id=0, name=C, color=yellow
我尝试过使用 map,但它似乎并没有改变列表,因为我将它映射到的函数应该是一个 getter 方法。
list.stream().map(p -> getter.apply(p))collect(Collectors.toList());
【问题讨论】:
-
使用
filter操作..? -
提供更多信息,使用提供的详细信息无法解决您的问题。
-
@bunny 请edit你的问题澄清你到底想要什么。包括一个 minimal reproducible example 演示问题以及示例输入和输出。
-
@bunny 您的问题已经说明了这一点,因此如果我们已经感到困惑,显然使用相同的词重述您的问题并不能帮助澄清事情(您的问题标题建议“过滤”但您的问题正文建议“地图”)。请注意,我们都在这里说代码;提供minimal reproducible example 和示例输入和输出将有助于我们理解。
-
collect(toList())返回一个新列表。它不会更新您的原始列表。您忽略了返回值。
标签: java collections java-stream