在不同行上打印二维数组



我正在尝试打印一个包含 5 行和 5 列的二维数组,但当我打印它时,我得到一行"[[0

, 0, 0, 0, 0], [0, 0, 0, 0, 0], [0, 0, 0, 0, 0], [0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0]]" 如何打印它以获得 5x5 网格?
import java.util.Arrays;
public class spil {
public static void main(String[] args) {
int[][] grid=new int [5][5];
System.out.println(Arrays.deepToString(grid));
}
public static void print(int[][] grid) {
for (int i = 0; i < grid.length; i++) {
for (int j = 0; j < grid[i].length; j++) {
System.out.print(grid[i][j]+ " ");
}
System.out.println();
}
}
}

检查这个;

import java.util.Arrays;
public class spil {
public static void main(String[] args) {
int[][] grid=new int [5][5];
print(grid);// you never called your function
// System.out.println(Arrays.deepToString(grid));-----> This function was making all printing
}
public static void print(int[][] grid) {
for (int i = 0; i < grid.length; i++) {
for (int j = 0; j < grid[i].length; j++) {
System.out.print(grid[i][j]+ " ");
}
System.out.println();
}
}
}

您在第 7 行中调用Arrays::deepToString,而不是自定义printmehthod。

请改用print(grid);来调用方法。

你可以调用你的打印方法:

public class Spil { 
public static void main(String[]  args) {
int[][] grid = new int[5][5]; 
print(grid);
} 
public static void print(int[][] grid) {
for (int i = 0; i < grid.length; i++) {
for (int j = 0; j < grid[i].length; j++) {
System.out.print(grid[i][j] + " ");
}
System.out.println();
}
}
}

输出将是这样的:

0 0 0 0 0 
0 0 0 0 0 
0 0 0 0 0 
0 0 0 0 0 
0 0 0 0 0