二维数组 | Java
Two Dimensional Array | Java
我有创建二维数组的代码,但我想修改此代码,以便使用 class Integer 而不是 int;并且使用嵌套的 ArrayList 而不是数组。
我该如何实现?谢谢。
public class Array {
int[][] fillMatrix() {
int[][] matrix = new int[5][4];
for (int row = 0; row < 5; row++) {
for (int column = 0; column < 4; column++) {
matrix[row][column] = row * column;
}
}
return matrix;
}
}
你只需要一个
List<List<Integer>> matrix;
这是列表中的列表。因此 0 位置将根据实现保留列/行。
您的代码应该类似于
List<List<Integer>> matrix = new ArrayList<List<Integer>>;
for (int row = 0; row < 5; row++) {
matrix.add(new ArrayList<Integer>())
for (int column = 0; column < 4; column++) {
matrix.get(row).add(row * column);
}
}
return matrix;
}
PS 未经测试的代码可能需要进行小的调整,但它应该提供了一个很好的指导方针。
import java.util.ArrayList;
import java.util.List;
public class Array {
List<ArrayList<Integer>> matrix = new ArrayList<ArrayList<Integer>>();
List<ArrayList<Integer>> fillMatrix() {
for (int row = 0; row < 5; row++) {
matrix.add(new ArrayList<Integer>());
for (int column = 0; column < 4; column++) {
matrix.get(row).add(column, row * column);
}
}
return matrix;
}
}
我有创建二维数组的代码,但我想修改此代码,以便使用 class Integer 而不是 int;并且使用嵌套的 ArrayList 而不是数组。
我该如何实现?谢谢。
public class Array {
int[][] fillMatrix() {
int[][] matrix = new int[5][4];
for (int row = 0; row < 5; row++) {
for (int column = 0; column < 4; column++) {
matrix[row][column] = row * column;
}
}
return matrix;
}
}
你只需要一个
List<List<Integer>> matrix;
这是列表中的列表。因此 0 位置将根据实现保留列/行。
您的代码应该类似于
List<List<Integer>> matrix = new ArrayList<List<Integer>>;
for (int row = 0; row < 5; row++) {
matrix.add(new ArrayList<Integer>())
for (int column = 0; column < 4; column++) {
matrix.get(row).add(row * column);
}
}
return matrix;
}
PS 未经测试的代码可能需要进行小的调整,但它应该提供了一个很好的指导方针。
import java.util.ArrayList;
import java.util.List;
public class Array {
List<ArrayList<Integer>> matrix = new ArrayList<ArrayList<Integer>>();
List<ArrayList<Integer>> fillMatrix() {
for (int row = 0; row < 5; row++) {
matrix.add(new ArrayList<Integer>());
for (int column = 0; column < 4; column++) {
matrix.get(row).add(column, row * column);
}
}
return matrix;
}
}