Java中的嵌套循环如何工作?
我是Java编程的新手,并且正在尝试学习编码的基础知识。 我想知道这段代码是如何工作的?
for (int i = 1; i <= 5; i++) { for (int j = 1; j <= 10; j++) { System.out.print((i * j) + " "); } System.out.println(); }
如果这里的编程sherlocks可以解释我的逻辑,我将非常感激。
它会……
1*1 1*2 1*3 till it gets to 1*10, then on a new line 2*1 2*2 2*3 and it will go to all the way to . . 5*10
因此它将打印出1 2 3 4 5 ...
直到10,然后再换一行。 输出如下。
1 2 3 4 5 6 7 8 9 10 2 4 6 8 10 12 14 16 18 20 3 6 9 12 15 18 21 24 27 30 4 8 12 16 20 24 28 32 36 40 5 10 15 20 25 30 35 40 45 50
for (int i = 1; i <= 5; i++) { // outer loop iterates 5 times. for (int j = 1; j <= 10; j++) { // for each iteration of outer loop, // inner loop iterates 10 times System.out.print((i * j) + " "); } System.out.println(); }
外循环的第一次迭代(内循环的10次迭代)
i = 1, j = 1 i = 1, j = 2 ... i = 1, j = 10
外循环的第二次迭代(内循环的10次迭代)
i = 2, j = 1 i = 2, j = 2 ... i = 2, j = 10
...
外循环的最后一次迭代(内循环的10次迭代)
i = 5, j = 1 i = 5, j = 2 ... i = 5, j = 10
因为trying to learn the basics of coding
,分享这个。
一旦你进入循环(i),你就面临第二个循环(j)。
现在第二个循环将首先完成,因此对于每个i,j将为1-10。
因此,您将从外部到内部工作:每次“顶部”循环运行时,即5次,它将执行括号之间的代码。
在那里,有另一个循环,使用j作为索引,将运行10次。 因此,当我们运行上循环5次,并且它执行另外循环10次时,我们将运行50次。 所以50次,这将打印出i和j的产品。
在’j’循环的每10个循环之后,它将打印出一个新行。
对于外循环的每次迭代,内循环将执行10次,因此这个内循环将在该程序中执行50次。
当i =1
,控制进入外环并且控制流到内环,现在j=1
并且它满足条件j<=10
因此将进入内环
现在这将打印
1
那么j
将增加, j
将是2仍然满足条件j<=10
并打印
2
现在这条线看起来像
1 2
这种情况一直持续到j<=10
为假,即当j
为11
内循环将停止执行并且控制流向下一个打印新行的打印语句
然后i
增加到2
并且同样的事情发生,直到i <=5
为假,即当i
变为6
,循环停止。
- 最佳Java随机种子
- JDT – 尝试更改Type的超类。 我不知道超级class的合格名称
- Java NoSuchAlgorithmException – SunJSSE,sun.security.ssl.SSLContextImpl $ DefaultSSLContext
- 使用JDBC的Postgres UTF-8 clobs
- Thread.sleep()的Java性能问题
- 如何在没有HTML的情况下获得多线JLabel(或看起来完全相同的JTextArea)
- Poloniex API – 无效的API密钥\ /密钥对
- ECDSA使用BouncyCastle签名并使用Crypto ++进行validation
- 在将应用程序迁移到Spring Boot之后使用Spring Data Rest时,我发现使用@Id的实体属性不再编组为JSON