3 回答
TA贡献1860条经验 获得超8个赞
根据Oracle文档:
“您不能创建参数化类型的数组”
相反,您可以执行以下操作:
ArrayList<ArrayList<Individual>> group = new ArrayList<ArrayList<Individual>>(4);
正如Tom Hawting的建议-定位线一样,最好这样做:
List<List<Individual>> group = new ArrayList<List<Individual>>(4);
TA贡献1804条经验 获得超3个赞
正如其他人所提到的,最好使用另一个列表将ArrayList存储在其中,但是如果必须使用数组,则:
ArrayList<Individual>[] group = (ArrayList<Individual>[])new ArrayList[4];
TA贡献1789条经验 获得超10个赞
我完全不明白,为什么每个人都在数组中建议泛型类型,尤其是对于这个问题。
如果我需要索引n不同的数组列表该怎么办。
声明后,List<List<Integer>>我需要n ArrayList<Integer>手动创建对象或通过for循环创建n列表或以其他任何方式,以任何方式创建n列表始终是我的职责。
如果我们通过强制转换为声明它不是很好List<Integer>[] = (List<Integer>[]) new List<?>[somenumber]。我认为这是一种不错的设计,其中不必亲自创建所有索引对象(数组列表)
谁能启发我为什么这个(数组形式)设计不好,它有什么缺点?
添加回答
举报