在我的java代码中,我尝试构建一个arraylist列表,我的代码如下,
private ArrayList<Integer>[] listoflist;
listoflist = (ArrayList<Integer>[]) new Object[875715];
Run Code Online (Sandbox Code Playgroud)
但是,当我编译代码时,编译器一直这么说
[Ljava.lang.Object; 无法转换为[Ljava.util.ArrayList;
我可以问为什么我不能将Object []转换为ArrayList []?
您说您正在尝试构建 ArrayList 列表。但是...您正在尝试使用数组来做到这一点...为什么不直接使用另一个 ArrayList 呢?其实很简单:
private List<List<Integer>> listoflist = new ArrayList<ArrayList<Integer>>();
Run Code Online (Sandbox Code Playgroud)
这是使用它的示例:
ArrayList<Integer> list1 = new ArrayList<Integer>();
list1.add(Integer.valueOf(3));
list1.add(Integer.valueOf(4));
ArrayList<Integer> list2 = new ArrayList<Integer>();
list2.add(Integer.valueOf(6));
list2.add(Integer.valueOf(7));
listoflist.add(list1);
listoflist.add(list2);
Run Code Online (Sandbox Code Playgroud)
说这么多ArrayList<ArrayList<Integer>>次有点奇怪,所以在 Java 7 中,构造可以是这样的new ArrayList<>();(它从您分配给它的变量推断类型)。