java for循环嵌套
答案:5 悬赏:50 手机版
解决时间 2021-11-17 03:26
- 提问者网友:焚苦与心
- 2021-11-16 12:09
java for循环嵌套
最佳答案
- 五星知识达人网友:野慌
- 2021-11-16 12:42
举个例子 香烟见过吧
第一层for循环相当于一条烟那个包装盒,里面有4包香烟(实际10包)
第二层for循环相当于一包烟那个包装盒,里面四根香烟(实际20根)
x=0 相当于这条烟里面的第一包烟 拿出来
然后 就在这一包烟里面 一根一根抽出来,
抽之前, 此时 x=0(第一包烟) y=4(包中有四根烟)
抽出一根, 此时 x=0 (还是第一包烟 ) y=3(抽出了一根)
再抽出一根,此时 y=2 (抽出了第二根) 条件不符合(y>2)
第二层循环结束
然后继续拿第二包香烟(x=1)
然后 就在这一包烟里面 一根一根抽出来
然后 步骤同上
以此类推
.......
.
第一层for循环相当于一条烟那个包装盒,里面有4包香烟(实际10包)
第二层for循环相当于一包烟那个包装盒,里面四根香烟(实际20根)
x=0 相当于这条烟里面的第一包烟 拿出来
然后 就在这一包烟里面 一根一根抽出来,
抽之前, 此时 x=0(第一包烟) y=4(包中有四根烟)
抽出一根, 此时 x=0 (还是第一包烟 ) y=3(抽出了一根)
再抽出一根,此时 y=2 (抽出了第二根) 条件不符合(y>2)
第二层循环结束
然后继续拿第二包香烟(x=1)
然后 就在这一包烟里面 一根一根抽出来
然后 步骤同上
以此类推
.......
.
全部回答
- 1楼网友:一把行者刀
- 2021-11-16 16:37
首先:X=0;内层循环执行一遍,这时if判断X不等于1 ,跳去执行外层循环的X++
X=1;内层循环执行一遍,这时if判断X等于1,执行X++,这时X=2;然后跳回循环体执行X++;
X=3; 以下就没有什么了。。。都一样
X=1;内层循环执行一遍,这时if判断X等于1,执行X++,这时X=2;然后跳回循环体执行X++;
X=3; 以下就没有什么了。。。都一样
- 2楼网友:骨子里都是戏
- 2021-11-16 15:58
for(int x = 0; x < 4; x++){
for(int y = 4; y>2; y--){
System.out.println(x + " " + y);
}
if(x == 1){
x++;
}
}
第一次循环 x == 0; y依次等于 4,3所以 出来 0 4换行0 3换行,
第二次循环 x == 1; y依次等于 4,3所以 出来 1 4换行1 3换行,需要注意的是x==1满足if条件,因此 if语句结束时 x 被赋值为2,
第三次循环 x == 3; y依次等于 4,3所以 出来 3 4换行3 3换行,
结束。
for(int y = 4; y>2; y--){
System.out.println(x + " " + y);
}
if(x == 1){
x++;
}
}
第一次循环 x == 0; y依次等于 4,3所以 出来 0 4换行0 3换行,
第二次循环 x == 1; y依次等于 4,3所以 出来 1 4换行1 3换行,需要注意的是x==1满足if条件,因此 if语句结束时 x 被赋值为2,
第三次循环 x == 3; y依次等于 4,3所以 出来 3 4换行3 3换行,
结束。
- 3楼网友:话散在刀尖上
- 2021-11-16 15:02
class ss{
public static void main(String[] args){
for(int x = 0; x < 4; x++){
for(int y = 4; y>2; y--){
System.out.println(x + " " + y);
}
if(x == 1){
x++;
}
}
}
}
first step:
x=0,y=4-------println "0 4"
second step:
x=0,y=3-------println "0 3"
third step:
x=1,y=4-------println "1 4"
x++ (x=2)
fourth step:
x=2,y=3-------println "2 3"
fifth step:
x=3,y=4-------println "3 4"
sixth step:
x=3,y=3-------println "3 4"
over.追问我想问的是为什么第二部还是x=0追答因为x是外循环,它要先把内循环y的值循环一遍才会进入下一步循环
public static void main(String[] args){
for(int x = 0; x < 4; x++){
for(int y = 4; y>2; y--){
System.out.println(x + " " + y);
}
if(x == 1){
x++;
}
}
}
}
first step:
x=0,y=4-------println "0 4"
second step:
x=0,y=3-------println "0 3"
third step:
x=1,y=4-------println "1 4"
x++ (x=2)
fourth step:
x=2,y=3-------println "2 3"
fifth step:
x=3,y=4-------println "3 4"
sixth step:
x=3,y=3-------println "3 4"
over.追问我想问的是为什么第二部还是x=0追答因为x是外循环,它要先把内循环y的值循环一遍才会进入下一步循环
- 4楼网友:有你哪都是故乡
- 2021-11-16 13:36
其实最好的办法是在eclipse里debug一下,跟踪一下运行顺序和变量值的变化。
这个循环其实还是比较简单的:
1.循环外层
2.循环内层
3。输出内容
4.判断x是否等于1,若等于则x自增。这样的话原本外层循环会执行四次,但x自增后只运行三次
内层循环永远执行两次追问还是没听懂最好详细的步骤比如x=多少。然后跳到哪里
这个循环其实还是比较简单的:
1.循环外层
2.循环内层
3。输出内容
4.判断x是否等于1,若等于则x自增。这样的话原本外层循环会执行四次,但x自增后只运行三次
内层循环永远执行两次追问还是没听懂最好详细的步骤比如x=多少。然后跳到哪里
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯