首页
题库
面试
求职
学习
竞赛
More+
所有博客
搜索面经/职位/试题/公司
搜索
我要招人
去企业版
登录 / 注册
首页
>
试题广场
>
&和&&的区别?
[问答题]
请你讲讲&和&&的区别?
添加笔记
求解答(0)
邀请回答
收藏(60)
分享
纠错
14个回答
添加回答
3
pp酱
1:逻辑与
&和&&两边的表达式的结果都为true时,整个运算结果才为true,否则,只要有一方为false,则结果为false。
另外&&具有短路的功能,若左边表达式为false,则不验证后边。
2:按位与
&还可以用作按位与的运算符
编辑于 2019-02-12 17:21:47
回复(0)
1
woli莹
&和&&都可以用作逻辑与的运算符, &表示逻辑与(and),当运算符两边的表达式的结果都为true时,整个运算结果才为true,否则,只要有一方为false,则结果为false。 &&还具有短路的功能,即如果第一个表达式为false,则不再计算第二个表达式, 例如,对于if(str != null && !str.equals(“”))表达式,当str为null时,后面的表达式不会执行,所以不会出现NullPointerException。 如果将&&改为&,则会抛出NullPointerException异常。int x=33,If(x==33 & ++y>0) y会增长,If(x==33 && ++y>0)不会增长 。 &还可以用作位运算符,当&操作符两边的表达式不是boolean类型时,&表示按位与操作,我们通常使用0x0f来与一个整数进行&运算,来获取该整数的最低4个bit位,例如,0x31 & 0x0f的结果为0x01
发表于 2019-05-09 11:02:18
回复(0)
1
心无所持
&和&&都是判断两边表达式是否为true.使用单&时,如果左边表达式不成立就会校验右边表达式,使用双&时,只要左边表达式不成立,不会接验右边。具有短路的效果。效率比单&高。
发表于 2019-01-20 23:29:51
回复(0)
0
可乐多加点冰
逻辑与 &和&&两边的表达式的结果都为true时,整个运算结果才为true,否则,只要有一方为false,则结果为false。 另外&&具有短路的功能,若左边表达式为false,则不验证后边
,
按位与 &还可以用作按位与的运算符
发表于 2020-07-07 22:15:09
回复(0)
0
_Foozi
& 与 && 都可以用作 逻辑与 条件判断,只有当左右条件都成立时才返回true。两者的区别是,&&具有短路的功能,当第一个条件不成立的时候,则不再判断第二个条件,而 & 会将两个条件都执行判断。并且 & 也是位运算符。
发表于 2020-04-29 15:31:27
回复(0)
0
码农自传
&: 逻辑与:两者相同为true。 位运算:相同为1,不同为0。 &&: 逻辑与:表达式两边相同为true。 短路与:左边为false,右边不执行。 总结:&&逻辑运算速度较快,&用法广。
发表于 2019-07-02 11:44:52
回复(0)
0
想做个咸鱼
&和&&都能作为逻辑与的操作,但是&&具有短路功能,当左边的条件表达式返回false则无需继续执行右边表达式,而&都需要进行
&还能作为与位运算符
发表于 2019-06-23 21:00:44
回复(0)
0
西瓜同学🏀
1:逻辑与 &和&&两边的表达式的结果都为true时,整个运算结果才为true,否则,只要有一方为false,则结果为false。 另外&&具有短路的功能,若左边表达式为false,则不验证后边。 2:按位与 &还可以用作按位与的运算符
发表于 2019-04-30 22:40:47
回复(0)
0
酷酷boye
1.&和&&两边的表达式的结果都为true时,整个运算结果才为true,否则,只要有一方为false,则结果 为 false。(补充说明:
&&具有短路的功能,若左边表达式为false,则不验证后边。
)
2.&还可以用作运算符
发表于 2019-04-28 22:21:57
回复(0)
0
九零二w
&运算符有两种用法:(1)按位与;(2)逻辑与。&&运算符是短路与运算
发表于 2019-04-27 16:29:57
回复(0)
0
江畔8670
&按位与的运算符,&&是逻辑与,&和&&只有表达式左右两边都为true的时候其结果才为true,&&具有短路功能若左边表达式为false则不进行后面表达式的判断,&&的执行效率更高
编辑于 2019-04-26 20:24:57
回复(0)
0
茹(๑•.•๑)
&运算符有两种用法:(1)按位与;(2)逻辑与。&&运算符是短路与运算。
发表于 2019-04-26 20:05:08
回复(0)
0
柠小哀
1 &与&&都可以用作逻辑与的运算符 当两边的结果都为true时 运算结果才为true 否则只要有一方运算结果是false 运算结果就为false 2 &&在开发过程中用到的概率比&大 因为&&具有短路的功能 只要第一个表达式是false 就不会再进行判断 eg:if(str!=null && !str.equals("")){} 当str==null时 后面的表达式就不会继续执行 但是 if(str!=null & !str.equals("")){}当str==null时 程序会报空指针异常 因为&不具有短路的功能 3 &同时也是位运算符 就是我们通常所说的按位与运算 当&的左右两边都是Boolean型表达式时或Boolean值时 就执行按位与运算
发表于 2019-04-26 15:07:31
回复(0)
0
浮森若思
当&操作符两边的表达式不是boolean类型时,&表示按位与操作
发表于 2019-04-20 08:13:48
回复(0)
这道题你会答吗?花几分钟告诉大家答案吧!
提交观点
问题信息
Java
Java工程师
上传者:
小小
难度:
14条回答
60收藏
6353浏览
热门推荐
相关试题
假定一个待哈希存储的线性表为(32...
哈希
评论
(1)
5.下列判断正确的是( )
资料分析
言语理解与表达
资料分析
评论
(1)
已知a
40
=...
京东
职能
2019
财务
保险
评论
(1)
《拳皇97》最后BOSS是谁?
游戏常识
评论
(1)
《魔兽世界》中,下列不属于玩家可以...
游戏常识
评论
(1)
扫描二维码,关注牛客网
意见反馈
下载牛客APP,随时随地刷题