繁体   English   中英

为什么这个println不能整个执行?

[英]Why isn't this println being executed with the entire body?

我是编程的新手,试图完全理解嵌套的for循环。 println是内部循环主体的一部分。 但是,它不是与内循环一起执行的。 我不想执行它,但是我只是想了解为什么内部循环体没有完全执行?

int rowNum, colNum;
    for (rowNum = 1; rowNum <= 3; rowNum++) 
    {
     for (colNum = 1; colNum <= 2; colNum++) 
            System.out.print(" rowNum: " + rowNum + " colNum: " + colNum);
        System.out.println();

    }

如果将println()与主体一起执行,我将得到以下内容:

 rowNum: 1 colNum: 1
 rowNum: 1 colNum: 2
 rowNum: 2 colNum: 1
 rowNum: 2 colNum: 2
 rowNum: 3 colNum: 1
 rowNum: 3 colNum: 2

相反,我得到了这个:

 rowNum: 1 colNum: 1 rowNum: 1 colNum: 2
 rowNum: 2 colNum: 1 rowNum: 2 colNum: 2
 rowNum: 3 colNum: 1 rowNum: 3 colNum: 2

再次,我只想了解原因,而不是如何解决...谢谢!

如果未提供大括号,则for循环仅执行下一行。 如果在第二个for循环之间和println();之后给出大括号。 你会想要的。

System.out.print(“ xxx”); System.out.println();

这会给你xxx xxx xxx xxx

因为它是print println print 2次,所以行来了。

编辑第一个System.out.println(“ rowNum:” + rowNum +“ colNum:” + colNum);

并删除第二个println。

rowNum:1 colNum:1 rowNum:1 colNum:2 rowNum:2 colNum:1 rowNum:2 colNum:2 rowNum:3 colNum:1 rowNum:3 colNum:2

这是因为您要打印2次才能退出循环并打印新行。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM