`
guo2168
  • 浏览: 10141 次
  • 性别: Icon_minigender_1
  • 来自: 郑州
最近访客 更多访客>>
文章分类
社区版块
存档分类
最新评论

Java中 关于&和&&的区别

阅读更多
&和&&都可以用作逻辑与的运算符,表示逻辑与(and),当运算符两边的表达式的结果都为true时,整个运算结果才为true,否则,只要有一方为false,则结果为false.
&&还具有短路功能,即如果第一个表达式为false,则不再计算第二个表达式,例如,对于if(str!=null && !str.equals(""))表达式,当str为null时,后面的表达式不会执行,所以不会出现 NullPointExcepiton,如果将&&改为&,则会抛出NullPointExcepiton。 又如if(x==33 & ++y>0) 这个表达式当x==33不成立即为false时,整个表达式的值已经为false了,但y的值还会增长,但如果将此处的&更改为&&,一旦当x==33不成立为false时,整个表达式的值已经为false了 而后面的表达式++y处的y值在这里也不会增长了。
&还可以用作位运算符,当&操作符两边的表达式不是boolean类型时,&表示按位与操作,我们通常使得0x0f来与一个整数进行&运算,来获取该整数的最低4个bit位,例如,0x31& 0x0f 的结果为0x01.

分享到:
评论

相关推荐

    java中&&和&的区别

    在Java编程语言中,`&`和`&&`都是逻辑运算符,但它们在实际使用中存在一些重要的差异。理解这些差异对于编写高效且清晰的代码至关重要。 首先,两者都用于进行逻辑运算,评估左右两边的布尔表达式,并根据结果返回...

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

    java中存在着与(&),短路与(&&),或(|)短路或(||)这些操作符: &&和&都是表示与,区别是&&只要满足第一个条件,后面条件就不用再做判断了。而&要对所有的条件都进行判断之后再处理。 ||和| 同上,都表示...

    详解java中&和&&的区别

    在Java编程语言中,`&`和`&&`都是逻辑运算符,但它们在实际使用中有着明显的区别。本文将详细解析这两个运算符的差异,帮助开发者更好地理解和应用。 首先,`&`和`&&`都可以用来进行逻辑与操作。这意味着只有当两个...

    IKM Java 88 Q&A.rar

    "IKM Java 88 Q&A"这个压缩包很可能包含了88个关于Java编程的问题与解答,涵盖了Java的基础、进阶以及最新特性。 1. **Java基础** - 类和对象:Java是一种面向对象的语言,了解如何定义类,创建对象以及类的封装、...

    java面试题&&java面试题

    - 详细解释Java中的构造器及其作用,包括默认构造器和带参数的构造器。 3. **异常处理** - 异常的分类,了解检查型异常和运行时异常的区别。 - 如何使用try-catch-finally语句块进行异常处理? - throw和throws...

    java &与&&的区别及实例

    Java编程语言中,`&` 和 `&&` 都是用来进行逻辑运算的,但它们之间存在显著的区别。本文将深入探讨这两个运算符的工作原理、用法以及何时使用它们。 首先,`&` 是一个位运算符,同时也用作逻辑运算符。作为位运算符...

    java中&与&&的区别

    在Java编程语言中,`&` 和 `&&` 都被用作逻辑运算符,但它们之间存在着重要的差异。理解这些差异对于编写高效且逻辑正确的代码至关重要。 首先,`&` 是位运算符,同时也是一种逻辑运算符。作为位运算符,`&` 对两个...

    JAVA设计模式&JScript中文帮助

    Java设计模式和JavaScript(通常写作JS)是两种广泛应用于软件开发的重要编程语言。设计模式是软件工程中的最佳实践,它们代表了在特定情况下解决问题的通用、可重用的方法。了解和掌握这些模式对于提高代码质量和可...

    opencv_java-jar&dll.zip

    此外,由于OpenCV库是C++编写的,因此在Java中使用时要特别注意异常处理和线程安全问题。 7. **调试与学习资源**:OpenCV官方文档、社区论坛和各种在线教程为学习和解决OpenCV Java问题提供了丰富的资源。开发者...

    蓝桥杯历年真题 java组&&c++组 省赛国赛

    "蓝桥杯历年真题 java组&&c++组 省赛国赛"这个资源包含了从第五届到第八届的蓝桥杯大赛的真题,主要针对Java和C++两个编程语言组别,覆盖了省级和国家级的比赛。蓝桥杯是一项国内知名的编程竞赛,旨在提升大学生的...

    JAVA笔试题&面试技巧

    在Java的世界里,无论是准备笔试还是面试,都需要深入理解这个语言的核心概念以及其在实际开发中的应用。"JAVA笔试题&面试技巧"这个资源显然旨在帮助求职者们提升在这个领域的专业知识和应试能力。以下是一些关键的...

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

    Java 中的基本类型和引用类型变量的区别 Java 中的基本类型和引用类型变量是两个不同的概念,它们在内存分配、变量赋值和函数传递等方面有着本质的区别。 基本类型是 Java 中的八种基本类型,包括 byte、short、...

    Java 逻辑运算符中&&与&,||与|的区别

    主要介绍了Java中&&与&,||与|的区别的相关资料,需要的朋友可以参考下

    JAVA中抽象类和接口的区别

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

    Java中抽象类和接口的区别

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

    JAVA题目&答案

    3. **集合框架**:Java中的ArrayList、LinkedList、HashMap、HashSet等集合类的使用,以及它们之间的区别和选择依据。 4. **异常处理**:如何抛出和捕获异常,理解checked和unchecked异常的区别,以及何时使用try-...

    Java语言教程&案例&相关项目资源.docx

    JRE(Java Runtime Environment):Java运行环境,包含JVM和Java SE标准类库,可以独立安装。 JDK(Java Development Kit):Java开发工具箱,包含JRE和一系列开发工具集(如Javac编译工具等),也可以独立安装。 ...

    基于Java语言教程&案例&相关项目资源

    - **内存管理**:理解Java虚拟机(JVM)的内存模型,特别是堆内存和栈内存的区别。 - **垃圾回收机制**:熟悉GC的工作原理,合理设置JVM参数以优化性能。 - **编码规范**:遵循良好的编码习惯,如命名规则、注释风格等...

    Java学习资料&项目源码&教程

    11. **抽象类和接口**:理解抽象类和接口的区别与应用场景。 12. **异常处理**:捕获和处理运行时错误,提高程序健壮性。 13. **集合框架**:List、Set、Map接口及其实现类的使用。 14. **泛型**:提供类型安全,...

    JAVA实验&实验报告&实验指导书

    在"JAVA实验&实验报告&实验指导书"中,学生或学习者可以深入理解并实践Java的核心概念和技术。以下是对这些主题的详细阐述: 1. 用户自定义绘图:Java提供了丰富的图形用户界面(GUI)工具,如Java AWT(Abstract ...

Global site tag (gtag.js) - Google Analytics