哈喽大家好,这里是java小白成长记!

这两天看到小伙伴们的评论,还有些小伙伴点了关注,甚至还有催更的!能得到大家的支持,小编还是蛮感动的,你们的支持给了我足够的动力!也坚持了几天了,不知道有没有天天跟我学习的小伙伴,感觉效果怎么样?反正小编最近学习java学的贼开心。虽然得到了一些小伙伴的支持,但我毕竟是个新人,哪里做的不好的地方希望大家指出来,小编能够及时改正,所以还是希望大家能互动一下,让我心里有个谱,哈哈。



iOS for 循环 执行结束再执行下一个 for循环结束当前循环_线框


昨天给大家分享的是用for循环来计算一个数的阶乘。整个代码也就用了一个for循环,今天加点小难度,我们试试两个for循环的效果。我说的两个不是用完一个再用一个,而是在第一个for循环里使用第二个for循环,也就是所谓的嵌套。这个还是有点挑战性的,一个不小心就会绕进去,所以想学习的小伙伴打起精神了。

我们老规矩,话不多说,直接用代码举列子:


iOS for 循环 执行结束再执行下一个 for循环结束当前循环_嵌套_02


大家看这个代码,一共有两个for循环,蓝色线框里是一个完整的for循环,红色线框里也有一个完整的for循环,而且蓝色线框里的for循环在红色线框for循环的内部,这就是for循环的嵌套。你能够看出最后输出的结果是什么吗?是不是有点乱了,不知怎么分析了。

其实不管有多少层的嵌套,我们只要一个一个分析就行了。

先看蓝色的,首先j等于1,1<=2,所以会输出两个字“小编”,然后j++,j从1变成了2,2依旧<=2,所以再输出两个字“小编”,然后j++,j变成了3,3>2,for循环就结束了,所以这个for循环最后的结果就是:

小编

小编

我们再看红色线框里的for循环,把蓝色里的忽略掉,是不是就和蓝色里的一样了,最后的结果就是两个“学习”:

学习

学习

现在知道他俩各自的结果了,我们把它们放在一起看,还记得小编说过java会从上到下的循序执行代码吗?从第5行进入红色线框里的for循环,什么都没干呢,就从第七行进入了蓝色线框里的for循环,刚才知道了蓝色线框里的for循环的结果是两个“小编”,所以最终的结果里会先有两个小编,也就是:

小编

小编

输出两个小编蓝色线框里的for循环就结束了,就该执行第11行代码了,会输出两个字“学习”,此时最终的结果变成了:

小编

小编

学习

输出完“学习”两个字,就该执行i++了,然后代码就回到了第7行,蓝色线框里的for循环会再来一遍,那就再输出两个“小编”,此时最终的结果变成了:

小编

小编

学习

小编

小编

代码再执行11行,输出两个字“学习”,此时最终的结果变成了:

小编

小编

学习

小编

小编

学习

然后执行i++,i变成3,3>2,所以红色线框里的for循环就结束了,也就意味着整个低吗结束,所以最终的结果就是:

小编

小编

学习

小编

小编

学习

我用DOS命令窗口运行一下,看看结果对不对:


iOS for 循环 执行结束再执行下一个 for循环结束当前循环_嵌套_03


和上面分析的一模一样。在上面的代码中,进入第一个for循环后,直接进入了第二个for循环,现在我们把代码改一下,把输出“学习”的代码放到第二个for循环上面:


iOS for 循环 执行结束再执行下一个 for循环结束当前循环_线框_04


此时最终的结果会是什么呢?其实道理是一样的,只不过这次是先输出“学习”再输出“小编”,最终的结果:


iOS for 循环 执行结束再执行下一个 for循环结束当前循环_线框_05


其实嵌套并不难,只是有点绕,自己可以多试一试,一旦你明白了,就很容易了。