我可以在Java中初始化2D数组的数组/ arraylist <int>吗?

Yiq*_*hen 4 java arrays arraylist multidimensional-array

我可以初始化2D数组的ArrayList,这是一个什么东西?

所以当我尝试初始化时,下面是我的代码

ArrayList<int>[][] suffle = new ArrayList<int>[row][col]; 
Run Code Online (Sandbox Code Playgroud)

我收到这样的错误:

错误:语法错误,插入"Dimensions"以完成ReferenceType

我怎样才能解决这个问题?

Mak*_*oto 5

这是一件事,但你必须使用一个对象,而不是一个原始对象.这适用于所有通用类型.

ArrayList<Integer>[][] suffle = new ArrayList[row][col];
Run Code Online (Sandbox Code Playgroud)

您将获得有关上述声明的编译器警告,但完全可以这样做.

根据您正在做的事情,最好使用列表列表,这将确保类型安全性与您从上面得到的未经检查的警告相反...

List<List<Integer>> suffle = new ArrayList<>();
Run Code Online (Sandbox Code Playgroud)

......或标准的二维数组:

int[][] suffle = new int[row][col];
Run Code Online (Sandbox Code Playgroud)

  • 因为该声明不合法. (2认同)