java中for嵌套for循环的详细讲解
7个回答
展开全部
就是 一个执行循序问题,先执行外面的循环:
1 for(int i=0;i<10;i++){
2 for(int j=0;j<3;j++) {
3 System.out.print("i*j="+i*j);
4 }
5 }
6 ....
....
当开始循环的时候,i=0,然后继续运行,j=0,输出i*j=0
此时循环从j=1,i仍旧为0 , j的值为2
输出结果为i*j=0,此时j++,j的值为2
循环从j=2,i仍旧为0 ,输出结果为i*j=0
当j=3,不满足j<3跳出内部for循环,执行外部for循环第二行代码,此时i++,i的值变为1
循环i=1, j=0时,结果为i*j=0
i=1,j=1 结果为i*j=1;
;;;;;;
;;;;;
当i循环到9,j=2是,输出循环结果为i*j=18
当i=10,不满足i<10,跳出外部循环,执行第6行
我只是拿一个例子给你讲解的,我像这样比给你讲解概念好理解,希望对楼主有所帮助
同时要理解i++和++i的区别,for()语句中的i++是要等for语句{。。。}中的内容执行完后在自加,而不是刚开始就自加。++i 是直接在原来的基础上加1然后在去各种运算
1 for(int i=0;i<10;i++){
2 for(int j=0;j<3;j++) {
3 System.out.print("i*j="+i*j);
4 }
5 }
6 ....
....
当开始循环的时候,i=0,然后继续运行,j=0,输出i*j=0
此时循环从j=1,i仍旧为0 , j的值为2
输出结果为i*j=0,此时j++,j的值为2
循环从j=2,i仍旧为0 ,输出结果为i*j=0
当j=3,不满足j<3跳出内部for循环,执行外部for循环第二行代码,此时i++,i的值变为1
循环i=1, j=0时,结果为i*j=0
i=1,j=1 结果为i*j=1;
;;;;;;
;;;;;
当i循环到9,j=2是,输出循环结果为i*j=18
当i=10,不满足i<10,跳出外部循环,执行第6行
我只是拿一个例子给你讲解的,我像这样比给你讲解概念好理解,希望对楼主有所帮助
同时要理解i++和++i的区别,for()语句中的i++是要等for语句{。。。}中的内容执行完后在自加,而不是刚开始就自加。++i 是直接在原来的基础上加1然后在去各种运算
展开全部
循环套循环时,可以简单的理解为:外循环为内循环的循环次数。及,当外循环执行循环指针移动一步,内循环循环一个循环。
例如:
for(int i=0;i<3;i++){
for(int j=0;j<3;j++){
System.out.println(i+"/t"+j);
}
}
当外循环执行时,i=0,满足i<3,循环内循环一次(输出三次),退出内循环;执行i++。以此类推当执行第四遍是,i=3,不满足i<3。因此外循环退出。
例如:
for(int i=0;i<3;i++){
for(int j=0;j<3;j++){
System.out.println(i+"/t"+j);
}
}
当外循环执行时,i=0,满足i<3,循环内循环一次(输出三次),退出内循环;执行i++。以此类推当执行第四遍是,i=3,不满足i<3。因此外循环退出。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
外面的循环是i次 里面的循环是k次 i执行一次 里面就执行k次(k可以是变量) 直到外面的i次执行完成,最多也就是i*k次,最少是i次
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
外层循环循环一次,内层循环循环一遍。你好好理解一下
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
一个年级里面有12个班,找出某个班的一个学生,类似大圈套小圈
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询