gpt4 book ai didi

java:返回一个集合

转载 作者:塔克拉玛干 更新时间:2023-11-03 04:44:13 28 4
gpt4 key购买 nike

在 Java 中返回集合的最佳方式是什么?

我应该允许调用者提供一个要添加到的集合吗?或者只返回 List<>Set<>项目?还是两者兼而有之?

public class Item { ... }

public class SomeOtherClass
{
private List<Item> myItems;

public List<Item> getItems()
{
return Collections.unmodifiableList(this.myItems);
}
public void collectItems(Collection<? super Item> target)
{
target.addAll(myItems);
}
}

注意:上面的例子假定了一个可以立即返回的列表的预先存在。当这样的列表以前不存在并且必须在调用者调用 getItems() 或 collectItems() 时生成时,我也对适当的答案感兴趣。(我根据 Mykola 提出的观点重命名了 collectItems。)

最佳答案

通过return 在函数中返回结果更好(除非有一些性能问题)。这样就更清楚发生了什么。

如果您选择第二个选项(填充客户端的集合),最好将函数从 getItems 重命名为 fillWithItems 之类的名称以避免代码不明确。

另外不要忘记 JavaBeans 及其约定。

关于java:返回一个集合,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2178319/

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