这是我的第一个问题!我正在尝试打印格式化的数字网格。我用2D数组做得很好,但是当我尝试使用数组列表时,我做不到。
我初始化了一个数组列表,该列表采用整数的arraylist并使用数组输入值,因为我不知道添加大量元素的更好方法(不必使用.add单独添加每个元素) “数字在这里”)?)无论如何
这是2D数组和2D arraylist的代码
public static void print2Darray() {
int[][] array = {{10, 15, 30, 40}, {15, 5, 8, 2}, {20, 2, 4, 2}, {1, 4, 5, 0}};
for (int i = 0; i < array.length; i++) {
for (int j = 0; j < array.length; j++) {
System.out.print(array[i][j] + " ");
}
System.out.println();
}
public static void print2DList() {
ArrayList<ArrayList<Integer>> list = new ArrayList<>();
int[][] array = {{10, 15, 30, 40}, {15, 5, 8, 2}, {20, 2, 4, 2}, {1, 4, 5, 0}};
List list2 = Arrays.asList(array);
list.addAll(list2);
System.out.println (list2.get(2)); //this prints the memory address (how can I print the number instead?)
System.out.println(Arrays.deepToString(list2.toArray()));
}
}
如果我弄清楚如何在最后一行之前打印线,我可以为每一行指定循环四次并打印值。但是,list2.get()
获取内存地址而不是值。
谢谢!