为了账号安全,请及时绑定邮箱和手机立即绑定

一点错误的想法....

break不写的话会怎么样啊?我感觉就算没有这个break也没有关系啊,大不了就是从i=1到i=5全部搜寻一遍啊(我理解的break在此处的作用是如果在1,2,3,4里找到了就可以提前退出来而不用老老实实全部找一遍了)?请问大神这样的理解是对的嘛......

正在回答

4 回答

没错,break可以跳出循环,比如for,while这些,你的理解是正确的

0 回复 有任何疑惑可以回复我~
#1

荇火 提问者

非常感谢!
2017-08-09 回复 有任何疑惑可以回复我~
#2

慕粉1012021416

不对,自己可以试一下如果去掉break的话,输出的结果就不一样了
2017-08-11 回复 有任何疑惑可以回复我~
#3

慕慕3299895 回复 慕粉1012021416

我试了一下 一样
2017-11-14 回复 有任何疑惑可以回复我~

如果这么不喜欢break,可以在定义index时赋初值为-1,然后不写else语句,就可以了。如下图。

http://img1.sycdn.imooc.com//5a0aed8e000196cd14300782.jpg然后貌似发现程序验证的原理了,只是搜索关键字和结果,这里的break被注释掉了他居然就不弹窗说缺少break了,手动斜眼。

1 回复 有任何疑惑可以回复我~

突然搞懂为什么了,这个代码必须有break。在没有break的情况下,循环的时候假如说在第三个arr[i]=value,然后index=i,这个时候i=3,index也就是3,接着下一个循环i=4的时候,arr[4]不等于value,进入else,index又变成了-1,直到i=5,循环结束,返回-1.所以说break这个作用是当arr[i]等于value时,让index=i,接着跳出循环,返回index,得到正确结果。

7 回复 有任何疑惑可以回复我~
#1

慕娘1331466

哇呜,我也懂了~
2017-08-11 回复 有任何疑惑可以回复我~
#2

centrifugeSIW

大神,想问一下,例题中为什么可以不用break啊?
2017-08-26 回复 有任何疑惑可以回复我~
#3

慕斯卡5168711 回复 centrifugeSIW

查询的方式不同
2017-09-03 回复 有任何疑惑可以回复我~
#4

慕慕3299895

如果没有else语句 就不用break
2017-11-14 回复 有任何疑惑可以回复我~
查看1条回复

不对,我也用VS试了下,去掉break,结果不一样了。

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

一点错误的想法....

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信