各位看一下,我的代码与答案不同,但输出的结果却一样,这是为什么?碰巧还是两者相同?

来源:4-11 Java循环跳转语句之 break

weixin_慕移动4434633

2016-08-17 23:02

答案:if(sum>20){

              System.out.println("当前的累加值为:"+sum);

               break;

           }

     }            

  }

}

输出的结果却一样,这是为什么?碰巧还是两者相同?

写回答 关注

3回答

  • 慕粉void
    2016-08-18 08:34:24
    已采纳

    两者的sum都是循环累加到21,满足sum>20的条件,通过break跳出循环。答案是先跳出循环,再输出sum,你的是先输出sum再跳出循环。所以结果是一样的。

    weixin...

    非常感谢!

    2016-08-22 21:25:28

    共 1 条回复 >

  • 慕粉3767435
    2016-08-18 00:18:07

    因为触发break;需要满足条件sum>20.而在你的代码sum在执行break;时已经赋值21了。

  • 慕瓜4644438
    2016-08-17 23:54:22

    其实关键在于sum的值,只要大于20,就回终止for循环,并获取当前sum。而Syso的执行是在break之前就被执行了,如果放在break后面,就不会输出结果了。

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

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

1165172 学习 · 17581 问题

查看课程

相似问题