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

&&和||后面都是不加()的, jq1=!(numa<numb) 为什么!后面要加()号?

&&和||后面都是不加()的,     jq1=!(numa<numb) 为什么!后面要加()号?       

正在回答

7 回答

和优先级相关,!的优先级高于<,如果!(numa<numb)不加括号,就会先计算!numa,再计算<numb。

至于&&和|| 左右不加括号,是因为在那些表达式中,&& 和 || 的优先级较低,会先计算左右的表达式,最后计算 && 和 ||,加不加括号都不影响结果。

建议去好好看一下编程基础中运算符的优先级关系,这个是通用的,无论哪门语言都一样。


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

运算符的优先级,算术>比较>逻辑运算>赋值

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

看起来就像数学公式里,加减法与乘除法那样

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

低优先级的表达式加括号转为高优先级。

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

优先级

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

numa<numb这部分是一个整体,所以括住,如果没有括号就是!numa和numb比较了。

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

腹黑的王先森

<是比较运算符,为什么比!优先级低呢
2016-09-06 回复 有任何疑惑可以回复我~

后面括号里是条件嘛 !代表的是“非”就是 false

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

举报

0/150
提交
取消

&&和||后面都是不加()的, jq1=!(numa<numb) 为什么!后面要加()号?

我要回答 关注问题
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号