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

下边这句代码为什么不报错。

下边这句代码为什么不报错。

勤奋豆小芽 2017-09-13 23:43:30
boolean flag= 10%2==1&&10/3==0&&1/0==0;
查看完整描述

5 回答

已采纳
?
望远

TA贡献1017条经验 获得超1032个赞

&&是短路与操作,A &&B时,如果表达式A为false ,那么表达式B将得不到执行,因为此时已经可以判断A&&B 为假,但是如果改成&不管A是真还是假,B都会得到执行.

查看完整回答
4 反对 回复 2017-09-14
?
幸福的天平

TA贡献4条经验 获得超1个赞

10%2==1 为false,后面10/3==0&&1/0==0 都不会执行

&&判断如果遇到false 立即返回不执行后面代码

||  判断如果遇到true 立即返回不执行后面代码

平时写代码可根据实际情况,排列表达式的位置,有时可大大提高性能

查看完整回答
1 反对 回复 2017-09-14
?
qq_汪奇_0

TA贡献2条经验 获得超1个赞

这是&&的问题,前面的表达式是假,后面的代码不执行

查看完整回答
1 反对 回复 2017-09-14
?
Poison丶刺心

TA贡献6条经验 获得超0个赞

楼上正解,0不能做除数是数学问题,不是逻辑问题,所以会抛出运行时异常

查看完整回答
反对 回复 2017-09-14
?
HansonQ

TA贡献223条经验 获得超56个赞

编译没有问题,运行会有问题

查看完整回答
反对 回复 2017-09-14
  • 5 回答
  • 0 关注
  • 2079 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信