gpt4 book ai didi

java - 将一组 Java 对象转换为另一组对象的最佳方式是什么?

转载 作者:行者123 更新时间:2023-12-02 11:01:40 26 4
gpt4 key购买 nike

这里是一个真正的新手提出的基本 Java 问题。我有一组实现某个接口(interface)(接口(interface)“MyIfc”)的Java对象(属于“MyClass”类)。我有一组这些对象存储在我的类中的私有(private)变量中,声明如下:

protected Set<MyClass> stuff = new HashSet<MyClass>();

我需要提供一个公共(public)方法,将该集合作为“MyIfc”类型的对象集合返回。

public Collection<MyIfc> getMyStuff() {...}

如何进行转换?以下行给我一个错误,它无法进行转换。我猜编译器知道 MyClass 类的对象实现了 MyIfc,因此会处理它。

Collection<MyIfc> newstuff = stuff;

任何启发都值得赞赏。

最佳答案

可能最正确的方法是:

    return new HashSet<MyIfc>(stuff);

如果类太大而无法做到这一点,您可以这样做:

    return Collections.unmodifiableSet(stuff);

关于java - 将一组 Java 对象转换为另一组对象的最佳方式是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2745899/

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