黑马程序员技术交流社区

标题: 简述&&与&的区别? [打印本页]

作者: czhczhczh    时间: 2016-1-9 21:24
标题: 简述&&与&的区别?
简述&&与&的区别?
作者: iori    时间: 2016-1-9 21:31
简单来说
if(a==0 && b==0){} //在这里,如果a不等0那么,后面b==0系统就不看了。
if(a==0 & b== 0) //这里,如果a不等于0,系统也会看后面的b==0
作者: 我爱睡觉    时间: 2016-1-9 21:36
逻辑上的话,可以理解是  两个门 同时正确才能开门
你一把钥匙错了,你就放弃开门  那是 &&
你一把钥匙错了,但你不甘心,试了另一个门的钥匙,因为前一把钥匙错了,所以不管你这个钥匙是对的还是错的,你都不能打开门。 这个是 &
作者: TbShadowWalker    时间: 2016-1-9 21:49
打个比方
if(x==0 && y==0){} //在这里,如果x!=0后面b==0系统就不用再废二遍事了。
if(x==0 & y== 0) //这里,如果x不等于0,系统也会看后面的y==0
这就好像是男生找女朋友 如果你长得跟外星人似的但是性格好
&& 如果先知道你长得像外星人 直接就甭谈 后边就不问你了
& 这个即使知道你长得像外星人也会了解你的性格 虽然说最后拒绝了 但是了解了你性格
作者: 1055513951    时间: 2016-1-9 21:53
&与&&的运算结果是相同的,但是&&具有短路功能,当&&左边为false时,右边不运行。而&两边都要运行
作者: 随缘的影子    时间: 2016-1-9 21:58
就像你买车票,&的话,你买不到坐票可以买无座。但是&&得话,就是买不到坐票我不去了。
作者: android1.0    时间: 2016-1-9 22:17
&&和&在与运算时,结果是一样的,只不过&&具有短路效果,如果左边为false,右边表达式就不执行
作者: 1066715808    时间: 2016-1-10 10:49
项一个!!
作者: d345462262    时间: 2016-1-10 12:04
&&有短路机制,前面的是false的话,后面就不运算了;&不论咋样前后都得运算
作者: 明日蜕变    时间: 2016-1-10 12:11
如题,顶一个
作者: 奋飞的小模糊    时间: 2016-1-10 12:36
兔子是兔子&乌龟是乌龟  ture&ture 只有两个都为真,输出的结果才为真。
兔子是兔子&&乌龟是乌龟  ture&&ture 只有两个都为真,输出的结果才为真。
结果为真时,两个的判断过程一样。

兔子是猴子&乌龟是乌龟  faulse&ture 这时,单&将两个判断都进行判断,faulse&ture ,结果为faulse。
兔子是猴子&乌龟是乌龟  faulse&***   这时,双&对第一个进行了判断为false,第二个结果就不在判断了。结果为faulse。
可以理解为&&是&的高级判断形式。


作者: pengjk    时间: 2016-1-10 14:27
&&与&的区别: 最终的结果一样     &&具有短路效果,即if(b==5&&c>5)//如果b!=5,后面的不再执行
作者: 呼雁潇    时间: 2016-1-10 15:37
一个有短路效果,一个没有,看大家解释的都好详细呀,真棒
作者: 542826323    时间: 2016-1-10 16:57
&&具有短路作用,如果前面的是false,后面直接就不能再看了。
作者: 晴空万里丶    时间: 2016-1-10 19:50
&&只要检查到前面是错的后面的就不用检查了。
作者: Android666    时间: 2016-1-10 20:32
&和&&都是逻辑运算符,都是判断两边同时真则为真,否则为假;但是&&当第一个条件不成之后,后面的条件都不执行了,而&则还是继续执行,直到整个条件语句执行完为止。
作者: 1178988315    时间: 2016-1-10 20:37
&&比&的运算速度要快,前提是 && 左边为 false 的情况下。
& 必须 两边都进行运算。
作者: Mr.zhao    时间: 2016-1-10 20:41
大家的比喻好有意思
作者: 稀饭酱紫    时间: 2016-1-10 20:42
都是大神啊   这回答  
作者: zhuyapeng    时间: 2016-1-10 21:24
短路与 效率高  当左边为false时就不判断右边了  
作者: 战神1996    时间: 2016-1-10 21:31
&与&&的运算结果是相同的,但是&&具有短路功能,当&&左边为false时,右边不运行。而&两边都要运行
作者: sss1234hhh    时间: 2016-1-10 22:06
&&如果前面的为false就别再去判读后面的了,&还要判断后面的
作者: 229390221    时间: 2016-1-10 22:13
&&是短路
作者: 胆小的狙击手    时间: 2016-1-10 22:20
说得非常好,终于知道了考试为什么错了




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2