gpt4 book ai didi

java - 改变 Set 中的值

转载 作者:行者123 更新时间:2023-12-03 18:52:18 25 4
gpt4 key购买 nike

我有一个包含 Item 对象的集合:Set<Item>类 Item 有一个方法 getName()返回一个字符串。我想转换 Set<Item>Set<String>使用方法 Item#getName()

有什么比使用 forEach 更好的方法吗?

最佳答案

itemSet.stream().map(Item::getName).collect(Collectors.toSet())

解释这个method-chain使用 Java 流:

  • .stream 一个接一个地从你的集合中提取每一项。请参阅 Oracle 发表的这篇文章,Processing Data with Java SE 8 Streams, Part 1 .
  • .map 对从您的集合中流出的每个对象调用指定的方法 (getName)。它的输出是每个项目的名称属性,显然是您方案中的一个 String 对象。
  • .collect 捕获每个名称输出,并将它们放入新的 Set 对象中。当此代码完成时,将返回这个新的 Set

enter image description here

关于java - 改变 Set<?> 中的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52465715/

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