gpt4 book ai didi

java - 通用数组创建错误

转载 作者:太空宇宙 更新时间:2023-11-04 10:06:08 24 4
gpt4 key购买 nike

我正在尝试做这样的事情:-

public static ArrayList<myObject>[] a = new ArrayList<myObject>[2];

myObject 是一个类。我收到此错误:- 通用数组创建(箭头指向新的。)

最佳答案

你不能有泛型类的数组。 Java 根本不支持它。

您应该考虑使用集合而不是数组。例如,

public static ArrayList<List<MyObject>> a = new ArrayList<List<MyObject>();

另一个“解决方法”是创建一个像这样的辅助类

class MyObjectArrayList extends ArrayList<MyObject> { }

然后创建一个MyObjectArrayList数组。

<小时/>

这是一个good article为什么这在该语言中是不允许的。本文给出了以下示例,说明如果允许的话可能会发生什么:

List<String>[] lsa = new List<String>[10]; // illegal
Object[] oa = lsa; // OK because List<String> is a subtype of Object
List<Integer> li = new ArrayList<Integer>();
li.add(new Integer(3));
oa[0] = li;
String s = lsa[0].get(0);

关于java - 通用数组创建错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52896034/

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