黑马程序员技术交流社区
标题:
双重for循环,执行顺序结果谁可以解答一下
[打印本页]
作者:
占琳
时间:
2012-10-21 14:49
标题:
双重for循环,执行顺序结果谁可以解答一下
class Test
{
public static void main(String[] args)
{
for(int i=0;i<5;i++)
{
for(int j=0;j<i;j++){
System.out.println(i);
}
}
}
}
输出结果是:
1
2
2
3
3
3
4
4
4
4
求诸位解答一下过程 怎么得出这样一个结果的
作者:
陈琦
时间:
2012-10-21 15:16
打个酱油,抢个二楼,不解释
作者:
给生活加点料
时间:
2012-10-21 15:24
你里面的循环条件是:for(int j=0;j<i;j++) j<i; 打印的是i. 你注意到没有。 外循环i=0时,里循环 0<0 ,不成立,所以不打印 i.
调到外循环 i++; 这时i=1,里循环 0<1,成立,所以打印结果为 1.j在++,1<1,不成立。在回到i++,加完是2,再进里循环,0<2;1<2;都满足条件,所以打印 2.
当2<2不成立时,在回外循环,以此类推。 所以打印结果为 你描述的那样。
作者:
刘伟平
时间:
2012-10-21 16:12
总之就是,从上到下,从左到右。
对于for就是进入循环体之后,再遇到内层for,符合内层循环条件,就进入内层循环体,完成内层指定次数的循环,
然后继续走到外层for循环体的 } ,继续外层的下一次循环。
作者:
黑马李超
时间:
2012-10-21 16:22
外循环 for(int i=0;i<5;i++)首先i=o,i<5成立,执行for(int j=0;j<i;j++){System.out.println(i);},此时i=o,j<i不成立,跳出内循环执行i++。继续i=1,i<5,执行内循环,j=o,j<1成立,执行打印i,
输出1
;然后j++,1<1不成立,跳出执行i++.此时i=2,i<5,执行内循环,j=o,j<2,成立,执行打印i,
输出2
;然后j++,j=1,j<2成立,再执行打印i,
输出2
;然后j++,j=2,2<2不成立,跳出执行i++。以此类推i=3时,
输出三个3
,i=4时,
输出四个4
,i=5时,i<5不成立,外循环结束。程序结束。
作者:
梁枝武
时间:
2012-10-21 17:02
这是嵌套循环,外循环中的i作用范围是内循环和外循环,而内循环中的j的作用范围为内循环
每一次外循环,内循环都执行(i - 0)次数 ,因此,i为0,内循环条件不成立,i变为1内循环执行一次,打印i的值一次,然后外循环i为2,此时内循环要执行两次,然后外循环i为3,此时内循环要执行三次,i到4的时候,内循环要执行四次
作者:
任雷彬
时间:
2012-10-22 00:23
i=0 j<0 不打印
i=1 j<1 j=0 1 打印一次
i=2 j<2 j=0,1 2,2打印两次
i=3 j<3 j=0,1,2 3,3,3,打印三次
i=4 j<4 j=0,1,2,3 4,4,4,4打印四次
外循环控制每一次打印数值,内循环控制数值打印的次数。i , j逐次递增完成循环。
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2