如何在java中创建动态2D数组
我正在读Java中的数组。我想用java动态创建一个2D数组。我知道我必须使用Arraylist,但我不知道如何实际将元素写入位置 我来自C语言背景。使用for循环创建动态数组并向其中添加元素非常容易。然而,同样的逻辑在这里不起作用。我读过另一个答案,但它们没有帮助,它们要么使用高级概念,要么使用静态声明如何在java中创建动态2D数组,java,arrays,Java,Arrays,我正在读Java中的数组。我想用java动态创建一个2D数组。我知道我必须使用Arraylist,但我不知道如何实际将元素写入位置 我来自C语言背景。使用for循环创建动态数组并向其中添加元素非常容易。然而,同样的逻辑在这里不起作用。我读过另一个答案,但它们没有帮助,它们要么使用高级概念,要么使用静态声明 ArrayList<Integer> Arr1=new ArrayList<>(); ArrayList<ArrayList<Integer
ArrayList<Integer> Arr1=new ArrayList<>();
ArrayList<ArrayList<Integer>> Arr2=new ArrayList<ArrayList<Integer>>();
for(int i=0;i<rows;i++){
for(int j=0;j<columns;j++){
Arr1.add(j);
}
Arr2.add(Arr1);
}
ArrayList Arr1=new ArrayList();
ArrayList Arr2=新的ArrayList();
对于(int i=0;i您需要为每一个新行重新初始化Arr1。类似如下:
int rows = 3, columns = 4;
ArrayList<Integer> Arr1;
ArrayList<ArrayList<Integer>> Arr2 = new ArrayList<>();
for (int i = 0; i < rows; i++) {
Arr1 = new ArrayList<>();
for (int j = 0; j < columns; j++) {
Arr1.add(j);
}
Arr2.add(Arr1);
}
System.out.println(Arr2);
int行=3,列=4;
arraylistarr1;
ArrayList Arr2=新的ArrayList();
对于(int i=0;i
其中应包括:
[0,1,2,3],[0,1,2,3],[0,1,2,3]]
您可以使用下面的代码
ArrayList<ArrayList<Integer>> Arr2=new ArrayList<ArrayList<Integer>>();
for(int i=0;i<rows;i++){
ArrayList<Integer> Arr1=new ArrayList<>();
for(int j=0;j<columns;j++){
Arr1.add(j);
}
Arr2.add(Arr1);
}
ArrayList Arr2=new ArrayList();
对于(inti=0;i这个怎么样
ArrayList<ArrayList<Integer>> Arr1=new ArrayList<ArrayList<Integer>>();
for(int i=0;i<rows;i++){
ArrayList<Integer> Arr2=new ArrayList<Integer>();
for(int j=0;j<columns;j++){
Arr2.add(j);
}
Arr1.add(Arr2);
}
ArrayList Arr1=new ArrayList();
for(int i=0;ithat不是基元数组..第二,如果使用arraylist,则应在第一个for循环中创建新的Arr1..否则,您只需追加到设置的旧行。