网站首页 > 技术文章 正文
哈喽大家好,这里是java小白成长记!
这两天看到小伙伴们的评论,还有些小伙伴点了关注,甚至还有催更的!能得到大家的支持,小编还是蛮感动的,你们的支持给了我足够的动力!也坚持了几天了,不知道有没有天天跟我学习的小伙伴,感觉效果怎么样?反正小编最近学习java学的贼开心。虽然得到了一些小伙伴的支持,但我毕竟是个新人,哪里做的不好的地方希望大家指出来,小编能够及时改正,所以还是希望大家能互动一下,让我心里有个谱,哈哈。
昨天给大家分享的是用for循环来计算一个数的阶乘。整个代码也就用了一个for循环,今天加点小难度,我们试试两个for循环的效果。我说的两个不是用完一个再用一个,而是在第一个for循环里使用第二个for循环,也就是所谓的嵌套。这个还是有点挑战性的,一个不小心就会绕进去,所以想学习的小伙伴打起精神了。
我们老规矩,话不多说,直接用代码举列子:
大家看这个代码,一共有两个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命令窗口运行一下,看看结果对不对:
和上面分析的一模一样。在上面的代码中,进入第一个for循环后,直接进入了第二个for循环,现在我们把代码改一下,把输出“学习”的代码放到第二个for循环上面:
此时最终的结果会是什么呢?其实道理是一样的,只不过这次是先输出“学习”再输出“小编”,最终的结果:
其实嵌套并不难,只是有点绕,自己可以多试一试,一旦你明白了,就很容易了。
今天的分享就到这里,有什么问题随时评论或者私信都可以,明天继续for、for、for!
- 上一篇: 有了 for 循环 为什么还要 forEach?
- 下一篇: 还在用双层for循环吗?太慢了
猜你喜欢
- 2024-11-27 用for循环写一个九九乘法表
- 2024-11-27 三菱plc编程,FOR循环指令详解
- 2024-11-27 通过几个事例,就可以说明 for...of 循环在 JS 是不可或缺
- 2024-11-27 年近半百自学Python之流程控制break和continue
- 2024-11-27 C语言程序设计(谭浩强第五版) 第5章 循环结构程序设计 习题解析答案
- 2024-11-27 C语言for循环语句使用形式总结
- 2024-11-27 C# break和continue区别
- 2024-11-27 VBA基本语法之For循环结构,都有什么含义,具体该怎么使用?
- 2024-11-27 C语言(五):for,break,continue
- 2024-11-27 C语言for循环小例子
- 标签列表
-
- content-disposition (47)
- nth-child (56)
- math.pow (44)
- 原型和原型链 (63)
- canvas mdn (36)
- css @media (49)
- promise mdn (39)
- readasdataurl (52)
- if-modified-since (49)
- css ::after (50)
- border-image-slice (40)
- flex mdn (37)
- .join (41)
- function.apply (60)
- input type number (64)
- weakmap (62)
- js arguments (45)
- js delete方法 (61)
- blob type (44)
- math.max.apply (51)
- js (44)
- firefox 3 (47)
- cssbox-sizing (52)
- js删除 (49)
- js for continue (56)
- 最新留言
-