问题
我想创建一个如下所示的arraylist数组:
ArrayList<Individual>[] group = new ArrayList<Individual>()[4]
但它没有编译。我怎样才能做到这一点?
#1 热门回答(114 赞)
如perOracle Documentation:
"你无法创建参数化类型的数组"
相反,你可以这样做:
ArrayList<ArrayList<Individual>> group = new ArrayList<ArrayList<Individual>>(4);
正如汤姆·霍金(Tom Hawting)所说 - 强调,它做得更好:
List<List<Individual>> group = new ArrayList<List<Individual>>(4);
#2 热门回答(69 赞)
正如其他人提到的那样,使用另一个列表存储ArrayList可能更好,但是如果你必须使用数组:
ArrayList<Individual>[] group = (ArrayList<Individual>[])new ArrayList[4];
#3 热门回答(58 赞)
这有效:
ArrayList<String>[] group = new ArrayList[4];