java - 如何初始化具有特定类型的列表数组?

标签 java arrays list initialization

我有一个方法需要返回 List<'MyClass>[] 并且需要为此设置一个局部变量,但我在初始化时遇到了问题。

我试过:

List<MyClass>[] lists = new List<MyClass>[5];

这给了我“无法创建列表的通用数组”的错误

我尝试转换一个对象数组:

List<MyClass>[] lists = (List<MyClass>[]) new Object[5];

这给了我一个运行时的转换错误。

我也试过:

List<MyClass>[] lists = (List<MyClass>[]) new List[5];

这导致了一个空指针异常。

任何人都知道需要做什么才能让它工作?

谢谢。

最佳答案

你像这样声明一个列表(例如 ArrayList):

List<MyClass> list = new ArrayList<MyClass>();

要创建此列表的数组,您需要执行以下操作:

List<?>[] listArray = new List<?>[]{list}; 

这会将您的列表放入一个数组中。我假设这就是您想要的,而不仅仅是列表中的项目。

关于java - 如何初始化具有特定类型的列表数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16127143/

相关文章:

c - 涉及 char 数组的 C 语句的含义

python - 为什么我的列表列表仅部分转换为字典?

javascript - 更改数组值也会更改另一个指定数组中的值

java - spring boot注释 Autowiring 的问题

java - 制作带有可见边框的透明 JFrame

java.net.URI - : Illegal character in fragment at index XXX - due to character "#"

c++ - 如何创建一个斐波那契数列直到某个整数 n?

r - 从嵌套列表中的所有矩阵中提取相同的列

list - 如果 x 在列表中,则返回 true,否则返回 False(递归)

java - 第一次运行 MyBatis 报错信息