使用数组创建列,输出错误

时间:2015-05-12 15:09:16

标签: java multidimensional-array

所以我试图在Java中制作一些简单的专栏(是的,我对此很新),而我却无法让它“正常”......

我的代码如下:

int[][] grid = {
            {3, 5, 2434},
            {2, 4},
            {1, 2, 3, 4}
        };

结合:

    for(int row=0; row<grid.length; row++){
        for (int col=0; col < grid[row].length; col++) {
            System.out.println(grid[row][col] + "\t");
        }

        System.out.println();
    }

这给了我这个结果:

3
5
2434

2
4

1
2
3
4

这让我感到困惑..不要“只是”像“标签”一样移动它们,而不是给它们一个新线?

我很感激答案。

6 个答案:

答案 0 :(得分:1)

System.out.println(grid[row][col] + "\t");

您正在使用println,它会在您传递的String末尾自动添加换行符。

请尝试使用System.out.print()

答案 1 :(得分:1)

您正在使用

System.out.println() ;

默认情况下,此方法会在输出的末尾添加一个新行。

如果您不想使用此行为,请使用

System.out.print();

答案 2 :(得分:1)

下一行是因为方法println()而不是因为\t 使用print()代替

您的方法就像调用print(yourParameters)然后println()那样表示

  

通过编写行分隔符字符串来终止当前行。该   行分隔符字符串由系统属性定义   line.separator,并不一定是一个换行符   ( '\ n')。

Source

答案 3 :(得分:1)

使用System.out.print代替System.out.printlnprintln会自动添加换行符并使您的标签无效。

for(int row=0; row<grid.length; row++){
    for (int col=0; col < grid[row].length; col++) {
        System.out.print(grid[row][col] + "\t");
    }

    System.out.println();
}

答案 4 :(得分:0)

使用System.out.print()代替System.out.prinln()以避免换行

答案 5 :(得分:0)

使用System.out.print()。 println命令在每个命令的末尾创建一个新行,就像你编写了System.out.print(text +&#34; \ n&#34;)。