删除循环Java的空白行文本

时间:2013-09-11 18:46:09

标签: java for-loop nested-loops

我正在尝试使用嵌套for循环打印一些timestables,我让它工作但我有一个额外的空行,我能够使用if语句删除它但我想知道是否有更好的方法去做这个。输出需要看起来像这样。

  

1 2 3 4 5
  2 4 6 8 10
  3 6 9 12 15
  4 8 12 16 20
  5 10 15 20 25

static void timesTables(){
    for (int i = 1; i <= 2 ; i++){
        for (int j = 1; j <= 5; j++){
            int output = i * j;
            System.out.print(output + " ");

        }
    }
}

3 个答案:

答案 0 :(得分:0)

如果您想要该输出,可以添加println

static void timesTables(){
    for (int i = 1; i <= 5 ; i++){
       for (int j = 1; j <= 5; j++){
           int output = i * j;
           System.out.print(output + (j < 5)? " ": "");
       }
       System.out.println();
   }  

答案 1 :(得分:0)

您可以为所需输出添加一个带有if条件的额外println。在外部for循环的第5次迭代中,不会打印额外的空白行。

static void timesTables(){
    for (int i = 1; i <= 5 ; i++){
        for (int j = 1; j <= 5; j++){
           int output = i * j;
           System.out.print(output + " ");
       }

       if(i<5)
       System.out.println();
   } 

答案 2 :(得分:0)

添加其他人写的内容:

static void timesTables()
{
    int numRows = 5;
    int numCols = 5;
    for ( int i = 1; i <= numRows; i++ )
    {
         for ( int j = 1; j <= numCols; j++ )
         {
            int output = i * j;
            System.out.print( output + ( j < numCols )? " ": "" );
         }

         if( i < numRows )
         {
            System.out.println();
         }
     }
}