全国旗舰校区

不同学习城市 同样授课品质

北京

深圳

上海

广州

郑州

大连

武汉

成都

西安

杭州

青岛

重庆

长沙

哈尔滨

南京

太原

沈阳

合肥

贵阳

济南

下一个校区
就在你家门口
+
当前位置:首页  >  技术干货

&和&&的区别在面试的时候该怎么答

发布时间:2022-06-07 17:40:00
发布人:qyf

java培训

  回答这个问题方法:

  先说两者的共同点,再说出&&和&的特殊之处,并列举一些经典的例子来表明自己理解透彻深入、实际经验丰富。

  共同点:&和&&都可以用作逻辑与的运算符,表示逻辑与(and),当运算符两边的表达式的结果都为true时,整个运算结果才为true,否则,只要有一方为false,则结果为false。

  不同点:

  1、&&还具有短路的功能,即如果第一个表达式为false,则不再计算第二个表达式,

  如果将&&改为&,那么俩个表达式都会执行,不管第一个表达式是否为false。

  回答到这里是一般人做法,那么我们如果是面试大厂,那么你就需要在加上,它的好处

  比如内存优化,代码优化,你都可以衍生点,如果这个是在一个循环语句中套着一个if判断,如果是安50次循环来计算,那么他少执行了50次判断,这样回答比较完美了。

  2、&还可以用作位运算符,当&操作符两边的表达式不是boolean类型时,&表示按位与操作,我们通常使用0x0f来与一个整数进行&运算,来获取该整数的最低4个bit位。(同样的到这里一般人回答就结束了)

  那么我们要说说什么位运算,这样第一可以说明我们是真的理解这个题不是说在背面试。

  第二说明我们有专研的精神,位运算大家自己根据自身情况来说。

  二、代码

  例如,对于if(str != null && !str.equals(“”))表达式,当str为null时,后面的表达式不会执行,所以不会出现NullPointerException。

  如果将&&改为&,则会抛出NullPointerException异常。if(x==33 & ++y>0) y会增长,if(x==33 && ++y>0)不会增长,说明

  更多关于“Java培训”的问题,欢迎咨询千锋教育在线名师。千锋已有十余年的培训经验,课程大纲更科学更专业,有针对零基础的就业班,有针对想提升技术的好程序员班,高品质课程助理你实现java程序员梦想。

相关文章

个体营业执照开通抖音小店

个体营业执照开通抖音小店

2023-10-08
抖音小店账户验证提交没反应怎么办理

抖音小店账户验证提交没反应怎么办理

2023-10-08
抖音小店在哪里办营业执照呢怎么注销

抖音小店在哪里办营业执照呢怎么注销

2023-10-08
抖音小店怎么玩的好一点

抖音小店怎么玩的好一点

2023-10-08

最新文章

上海物联网培训一般费用多少

上海物联网培训一般费用多少

2023-09-12
北京物联网培训费用大概多少

北京物联网培训费用大概多少

2023-09-12
北京物联网培训需要费用高不高

北京物联网培训需要费用高不高

2023-09-12
上海效果好的物联网培训费用高吗

上海效果好的物联网培训费用高吗

2023-09-12
在线咨询 免费试学 教程领取