gpt4 book ai didi

java - 将 List 转换为 List

转载 作者:行者123 更新时间:2023-12-01 17:34:49 27 4
gpt4 key购买 nike

我正在用 java 编写一段代码,想封装我的对象并仅返回接口(interface)。

现在简而言之,这是我的问题,我有一个包含列表的类,并且我有一个返回列表的 getter。如何返回接口(interface)列表?

没有收到此错误警告:

列表是原始类型。对泛型类型 List 的引用应该参数化

为了让您清楚地了解这段代码是我的问题的一个示例:

public class Employee{

private List<MyObject> myObjects;

public List<MyInterface> getMyObjects(){
return myObjects;
}

}

其中 MyObject 实现 MyInterface 并返回 myObjects 给出了问题。

提前致谢。

最佳答案

如果MyObject实现MyInterface您可以将返回类型更改为 List<? extends MyInterface> .

class Employee{
private List<MyObject> myObjects;

public List<? extends MyInterface> getMyObjects(){
return myObjects;
}
}

请注意,在这种情况下,编译器将不允许您调用 add(...)在返回的列表中,除非您在此处进行转换。但是,由于您仅返回接口(interface),我猜您不打算向返回的列表添加任何内容,所以应该没问题。

关于java - 将 List<MyObject> 转换为 List<MyInterface>,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7568614/

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