我是靠谱客的博主 能干身影,最近开发中收集的这篇文章主要介绍java for嵌套循环_JAVA-初步认识-第四章-语句-for循环嵌套,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

一. 语句嵌套

在语句中加入一些其它语句,比如for语句中,加入了if语句。其实就是在原有语句的循环体基础上,对其进行扩展,添加了一些语句。

嵌套的形式有很多种,没有必要刻意地去记录,当需要使用的时候去用即可。这里将讨论一种特殊的嵌套形式。

在for语句的循环体,加入for语句,这样的结构称为for语句的嵌套结构。(加入其他的语句也称为嵌套结构么?这里应该是强调for语句的嵌套结构)这里有内外循环。

15e45e5bbd68240f0ac1abf3bf8db20c.png

循环嵌套例子的练习。值得注意的就是一个空白换行语句。

b98a14c8b8d93dcf082c2e83cd8b13ae.png

57cb76cac7ce69ff3d96b22acd4f6c84.png

for嵌套的思想:外面有很多行,每一行里面有很多变量。→多行多列

872bfdcec8d9896506b6dedf98810ab0.png

注解:针对上图的习题,我原本想的是用for嵌套不靠谱,因为,虽然是多行,每行也有多个符号,而且符号一致,但毕竟每行*不一样。但对于这种规则的排列,背后一定能找到规律,需要对嵌套语句的书写做一定的改变。不能拘泥于一模一样的每行每列。

7a7fbbf6cb454b5517931894877b51ce.png

注解:上面是我给出的解题,我的思路就在于每一行的行数和该行的列数,的和是一个固定的值,都是6,当外循环不断增大时,用外循环的值,来控制内循环的循环次数,这个思想就是视频中的0~5,0~4,0~3....(要熟记正斜三角和反斜三角的语句书写。)

虽然我们解答了题目,但是我们研究一下视频中的解题思路,便于我们深入地理解for嵌套。

a4f2b509200e91e864cb8ed0e1c328da.png

无论哪个思路,都是在矩形的基础上进行修改,得到正斜或者反斜的布局。

思路1:原有程序输出的是一个固定行数和列数的*图案,但是在本题中,每一行的列数在不断减少,这就意味着我们要改变内循环。做出什么样的改变?每一次输出都是一个*号(例题本质上是相同语句的重复输出),*号在减少,意味着我们要减少循环的次数。

9211a9f6e80f12f439b03b903f909ea3.png其实,五行和五列是固定的,只是在输出的时候变化了,现在固定5,前面的数不断变大,自然结果在缩小。还有一种是改变尾,

120aaca5ee67ab83e98522dde344f319.png这两种情况都能实现列的递减。

9211a9f6e80f12f439b03b903f909ea3.png意味着y<=5的语句中,5是在变化的。要重新定义一个变量来控制尾数。

89999002ed5826a2f972cfbe3fe35861.png

思路1中的x和z不是一致变化的, 除非改变x的变化规律,就可以使用x来代替z了。

思路2:采用1~5,2~5,3~5,改变的是前面的数。就用变量来操纵前面的数。由于z的变化和x一致,就直接可以用x来代替z。

f4bd5c65838f7266ab122fdbcd9c4e91.png

e11ad00788dd2e5e93a811ed98a35ca9.png

解析过程:for嵌套针对的是这种行,和列重复输出的题目。在本需求中,行数是固定不变的,那么控制行数的外循环次数就不变,循环次数的求解可以是1~5,++来求解,也可以是5~1,--来求解。但是有一点必须明确,外循环次数是固定的。需求中,每行中列的数目在变化,也就意味着控制内循环-循环次数的事物也是在变化着的(内循环次数代表着列数)。解题的核心在于,外循环次数不变,内循环次数在变。内循环步长的减少(步长的减少?),在书写时,分为两种,1~5尾数在变小,1~5前数在变大。专门定义一个变量来控制内循环的变量的变化,即z,同时也可以用外循环x的变化来替代z。

注意:在对视频的学习中,外循环(代表着行数)一定是从1~5么,内循环(代表着列数)一定是从5~1么,都不是,无论是从1~5,还是从5~1,抑或是1~4,1~3....这些都是表象,都是为了计数用的,本质是为了控制循环的次数。从1~5是控制次数,从5~1就不是了么?怎么可能,都一样的,只是个人习惯不一样,理解起来的程度不一样。

为了长期使用的方便,我们罗列一个固定的形式,外循环固定不变,for (int x=0; x<=4; x++),所有的变动都集中在内循环上,在利用外循环变量的基础上,有正斜和反斜两种情况。在正斜或反斜中,对于内循环变量循环次数的控制也有两种,前数变动和尾数变动。

外循环固定不变,for (int x=0; x<=4; x++)

内循环:a. 反斜: 尾数变动 for (int y=x; y<=4-x; y++)    哪个数在动,内循环中,就是哪个数在变,

前数变动 for (int y=x; y<=4; y++)

b. 正斜: 尾数变动 for (int y=0; y<=x; y++)

前数变动 for ( int y=4-x;y<=4 ; y++)

1.定义z,不牵涉x,且1~5前数在变的情况。

d5587dacfeb370aab781259c8435affc.png

定义z,且前数在变,为了减少变量,可以利用外循环的变量来替代z。能够替代的原因在于都是自增的时刻和初始值可以保持一致。

dcef18467987f13545773024bf258499.png

2. 使用z变量,1~5尾数在变化。用x替代z的情况也列在下面。

106efa8b226aba9f1d7b50645e733e18.png

f78c927c5f0ffc940943a4da331f5fbe.png

总结:本节谈论的是for嵌套for语句的练习,在控制台上输出一个布局为矩形或者三角形。练习能够采用循环结构的for语句实现,本质在于练习是在重复进行相同的操作—输出。控制内外循环的两个变量都有两种变化形式,内循环可以是前数或者尾数在变,外循环可以是从小到大,或者从大到小在变。

最后

以上就是能干身影为你收集整理的java for嵌套循环_JAVA-初步认识-第四章-语句-for循环嵌套的全部内容,希望文章能够帮你解决java for嵌套循环_JAVA-初步认识-第四章-语句-for循环嵌套所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(59)

评论列表共有 0 条评论

立即
投稿
返回
顶部