黑马程序员技术交流社区
标题:
&和&&的区别(面试必会)
[打印本页]
作者:
liming_heima
时间:
2015-6-20 18:07
标题:
&和&&的区别(面试必会)
&和&&都可以用作逻辑与的运算符,表示逻辑与(and),当运算符两边的表达式的结果都为true时,整个运算结果才为true,否则,只要有一方为false,则结果为false。
&&还具有短路的功能,即如果第一个表达式为false,则不再计算第二个表达式,例如,对于if(str != null && !str.equals(“”))表达式,当str为null时,后面的表达式不会执行,所以不会出现NullPointerException如果将&&改为&,则会抛出NullPointerException异常。If(x==33 & ++y>0) y会增长,If(x==33 && ++y>0)不会增长
&还可以用作位运算符,当&操作符两边的表达式不是boolean类型时,&表示按位与操作,我们通常使用0x0f来与一个整数进行&运算,来获取该整数的最低4个bit位,例如,0x31 & 0x0f的结果为0x01。
作者:
lizhi1817
时间:
2015-6-20 18:21
不错哦 学习了
作者:
谢志宝
时间:
2015-6-20 20:58
跟我们第一天考试的不一样呢
作者:
纪青超
时间:
2015-6-20 21:15
&这个不是用于二进制数据运算的吗?相当于与运算。
作者:
a1224577182
时间:
2015-6-20 22:15
感谢分享!!
作者:
腹黑生姜
时间:
2015-6-20 22:22
必会吗!
作者:
繁华落幕
时间:
2015-6-20 23:00
纪青超 发表于 2015-6-20 21:15
&这个不是用于二进制数据运算的吗?相当于与运算。
它是位运算符 但也是逻辑运算符,,当有&&的时候 那代表的就是逻辑运算符了
作者:
AIE
时间:
2015-6-20 23:32
&&有短路功能
作者:
金亮0602
时间:
2015-6-20 23:54
学习了,以后会注意的,多谢你的提醒
作者:
我了个去
时间:
2015-6-21 09:13
不错哦!基础一定得扎实才行
作者:
朱智琳
时间:
2015-6-21 17:26
挺有用
作者:
zuopiezi
时间:
2015-6-21 17:34
学习学习。。。
作者:
追忆似水年华
时间:
2015-6-21 18:12
不错学习,学习。
作者:
十字天堂
时间:
2015-6-21 18:30
写的不错{:3_64:}
作者:
Nemo
时间:
2015-6-21 18:47
不错不错啊
作者:
中平
时间:
2015-6-21 19:23
必会题有用!!
作者:
一口老郭
时间:
2015-6-21 20:06
很详细啊
作者:
安安安
时间:
2015-6-21 20:33
恩。学习了。。
作者:
精灵来了
时间:
2015-6-21 20:56
&&还具有短路的功能,即如果第一个表达式为false,则不再计算第二个表达式,&还可以用作位运算符
作者:
15311068548
时间:
2015-6-21 20:59
谢谢大神们的分享
作者:
fyg408224345
时间:
2015-6-21 21:02
||也一样。也具有短路功能
作者:
小龙编程世界
时间:
2015-6-21 21:07
&&是短路与
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2