`

JAVA &和&&的区别

    博客分类:
  • JAVA
阅读更多

 

 

&和&&的区别

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

&&还具有短路的功能,即如果第一个表达式为false,则不再计算第二个表达式,例如,对于if(str != null && !str.equals(“”))表达式,当str为null时,后面的表达式不会执行,所以不会出现NullPointerException

&不具有短路功能。执行前面表达式后,不管是否是false还是true,还会执行后面的表达式。如果将&&改为&,则会抛出NullPointerException异常。If(x==33 & ++y>0) y会增长,If(x==33 && ++y>0)不会增长

&还可以用作位运算符,当&操作符两边的表达式不是boolean类型时,&表示按位与操作,我们通常使用0x0f来与一个整数进行&运算,来获取该整数的最低4个bit位,例如,0x01 & 0x0f的结果为0x01。

可以参考http://blog.sina.com.cn/s/blog_6bd03e3501011yge.html的例子更生动理解

 

分享到:
评论

相关推荐

    java中&&和&的区别

    java中的&&与&两者的区别

    java &与&&的区别及实例

    主要介绍了java &与&&的区别的相关资料,并附简单实例,帮助大家学习理解这部分知识,需要的朋友可以参考下

    详解java中&和&&的区别

    主要介绍了java中&和&&的区别,在java中比较常见的运算符:&&(短路与)、&、||(短路或)、|,需要的朋友可以参考下

    java之&&与& -与- 的区别

    &&和&都是表示与,区别是&&只要满足第一个条件,后面条件就不用再做判断了。而&要对所有的条件都进行判断之后再处理。 ||和| 同上,都表示或,区别在于||只要满足第一个条件,后面的条件就不用再做判断了,而|还要...

    java中&与&&的区别

    本文主要介绍了java中&与&&的区别,具有很好的参考价值。下面跟着小编一起来看下吧

    javaapplication和javaapplet的区别

    javaapplication和javaapplet的区别

    Java堆和栈的区别

    Java堆和栈的区别Java堆和栈的区别Java堆和栈的区别Java堆和栈的区别Java堆和栈的区别Java堆和栈的区别

    java和javax的区别

    java和javax的区别java和javax的区别java和javax的区别

    java工程linux部署图片教程

    我觉得在Linux下安装JDK和在Windows下并没有什么区别,只是在设置环境变量的时候有点不同,Windows的操作稍微简单一些,只需按几下按钮,复制粘贴一下就行;在Linux下则需要敲入挺多的字符才行,但也是不是很难的,...

    Java中抽象类和接口的区别

    在Java语言中,abstract class和interface 是支持抽象类定义的两种机制。正是由于这两种机制的存在,才赋予了Java强大的面向对象能力。abstract class和interface之间在对于抽象类定义的支持方面具有很大的相似性,...

    Java中的类、抽象类和接口的区别和联系

    Java中的类、抽象类和接口的区别和联系

    区别Java中堆与栈区别Java中堆与栈

    区别Java中堆与栈区别Java中堆与栈区别Java中堆与栈区别Java中堆与栈区别Java中堆与栈区别Java中堆与栈区别Java中堆与栈区别Java中堆与栈

    11.java接口和抽象类的区别.zip

    11.java接口和抽象类的区别.zip11.java接口和抽象类的区别.zip11.java接口和抽象类的区别.zip11.java接口和抽象类的区别.zip11.java接口和抽象类的区别.zip11.java接口和抽象类的区别.zip11.java接口和抽象类的区别....

    JAVA中抽象类和接口的区别

    在Java语言中,abstract class 和interface 是支持抽象类定义的两种机制区别

    java.io.Reader 和 java.io.InputStream 的区别

    java.io.Reader 和 java.io.InputStream 的区别

    Java中的基本类型和引用类型变量的区别

    Java中的基本类型和引用类型变量的区别

    javacv,opencv java版

    JavaCV 是一款开源的视觉处理库,基于GPLv2协议,对各种常用计算机视觉库封装后的一组jar包,封装了OpenCV、libdc1394、OpenKinect、videoInput和ARToolKitPlus等计算机视觉编程人员常用库的接口。 JavaCV通过其中的...

    C++和Java多态的区别

    C++和Java多态的区别

    C#和java的语法区别

    C#和java的语法区别,精心总结的两种语言的区别,方便从c#转java的开发人员

    java事件和监听的区别

    讲解了java中的事件和监听的区别。Java中的事件到底是什么?监听又是什么呢?在这里你能找到答案!!

Global site tag (gtag.js) - Google Analytics