多重循环中for语句的循环条件为啥不能用j==i

来源:4-14 Java 循环语句之多重循环

NothingOonYou

2016-10-21 21:25

for (int i = 1; i<=3; i++) {

for (int j = 1; j<=i;j++   ) {               

System.out.print("*");

}

System.out.println();

}

请问第二句为啥不能是for (int j = 1; j==i;j++   ) 呢?

写回答 关注

7回答

  • aswindy
    2016-10-21 21:39:32
    已采纳

    可以这么写,但是逻辑上就是只有j=i=1执行一次打印*

    aswind... 回复Nothin...

    i=2的时候,里面j是从1开始,明显二者不等,循环不执行,j++也不会执行;i=3的时候也是如此。

    2016-10-21 22:40:03

    共 7 条回复 >

  • NothingOonYou
    2016-10-22 21:25:54

    了解了,感谢各位的热心回答(某位除外)。

  • 慕粉4247609
    2016-10-21 21:58:48

    我刚学 就懂  你还不懂 真笨  比我还笨,大笨狗


  • 慕圣7600611
    2016-10-21 21:52:39

    外循环执行一次,内循环执行一圈,如果将i值赋值给j那么j的值会随着外循环的变化而变化。在java中这种情况是不运行的。

  • qq__2691
    2016-10-21 21:41:59

    假设i=2,j=1的情况,第二个for循环就是for(j=1;j==2;j++),很明显这个就运行不了。

  • qq_梦幻水晶_2
    2016-10-21 21:41:36

    你这个代码运行的结果是一个直角三角形,因此在进行第二行输出两个**时,若判断条件为j==i.即2==1,不符合条件,因此不进入内层循环也就无法输出*了

  • Yarlia4220099
    2016-10-21 21:38:34

    j==i之后,j>i也满足情况,所以j会一直加下去

Java入门第一季(IDEA工具)升级版

0基础萌新入门第一课,从Java环境搭建、工具使用、基础语法开始

1165506 学习 · 17586 问题

查看课程

相似问题