我要打印如下输出:
0 5 10 15 20
1 6 11 16 21
2 7 12 17 22
3 8 13 18 23
4 9 14 19 24
但是它一直这样冒出来:
0 0 0 0 0
1 6 0 0 0
2 7 12 0 0
3 8 13 18 0
4 9 14 19 24
这是我到目前为止所做的:
public static void main(String[] args) {
int [][]matrix = new int[5][5];
fillSequentialMatrix2D(matrix);
}
public static void fillSequentialMatrix2D(int [][]matrix) {
for(int j=0, k=0; j<matrix[0].length ;j++){
for(int i=0; i<matrix.length ;i++){
matrix[i][j] = k++;
System.out.print("\t"+matrix[j][i]);
}
System.out.println("");
}
}
如何使其正确打印?
答案 0 :(得分:0)
正如上面的评论所述,您需要从循环中删除输出。
public static void fillSequentialMatrix2D(int [][]matrix) {
for(int j=0, k=0; j<matrix.length ;j++){
for(int i=0; i<matrix.length ;i++){
matrix[i][j] = k++;
//System.out.print("\t" + matrix[j][i]);
}
// System.out.println();
}
for(int j = 0; j < matrix.length; j++)
{
for(int i = 0; i < matrix.length; i++)
System.out.print("\t" + matrix[j][i]);
System.out.println();
}
}
从上方采样输出。
0 5 10 15 20
1 6 11 16 21
2 7 12 17 22
3 8 13 18 23
4 9 14 19 24