初始化数组列表的数组

2022-09-03 17:45:03

如何初始化 ?ArrayArrayList<String>

我尝试了这种语法,但它不起作用:

ArrayList<String>[] subsection = new ArrayList<String>[4];

答案 1

你可以这样定义:

ArrayList<String>[] lists = (ArrayList<String>[])new ArrayList[10];
    lists[0] = new ArrayList<String>();
    lists[0].add("Hello");
    lists[0].add("World");
    String str1 = lists[0].get(0);
    String str2 = lists[0].get(1);
    System.out.println(str1 + " " + str2);

答案 2

该语法适用于非泛型 。(伊德酮)ArrayList

但它不适用于通用:(ideone)ArrayList<E>

此代码:

ArrayList<String>[] subsection = new ArrayList<String>[4];

给出编译器错误:

Main.java:8: generic array creation
        ArrayList<String>[] subsection = new ArrayList<String>[4];

对于通用版本,请使用 :ArrayList<ArrayList<E>>

ArrayList<ArrayList<String>> subsection = new ArrayList<ArrayList<String>>();