`

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&.net全集收录

    标题中的“笔试题java&.net全集收录”表明这是一个包含Java和.NET技术领域笔试题目的集合,可能涵盖了这两门编程语言的基础知识、高级概念、框架应用以及开发实践等内容。这些题目可能是为了招聘过程中的技术筛选而...

    [JAVA&C#]C#&Java差异手册.pdf

    本文将根据提供的标题、描述及部分内文,详细阐述C#与Java的关键差异点,帮助读者理解两者在语言设计、功能特性上的区别。 ### C#与Java:不仅仅是相似 C#,由微软开发,常被视为Java的变体或竞争者。尽管两者在...

    java&guava讲义.pptx

    * NPE(NullPointerException)和 == 操作符的区别。 Guava 框架知识点: * Guava 的设计理念:优秀的 API 设计,简洁、功能强大。 * Guava 对 String 的支持:提供了多种字符串操作,例如 Joiner、Splitter 等。 ...

    java &与&&的区别及实例

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

    Java&J2EE Job Interview Companion.pdf

    - **EJB**:了解Session Bean和Entity Bean的区别,掌握其部署和配置方式。 - **JMS**:掌握消息队列(Queue)和主题(Topic)的概念,了解消息中间件如ActiveMQ的使用。 - **RMI与EJB**:理解远程方法调用的基本...

    详解java中&和&&的区别

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

    ACCP4.0全套课件之Java&OOP

    【Java&OOP】课程是ACCP4.0培训体系中的重要组成部分,旨在深度讲解Java编程语言以及面向对象编程(Object-Oriented Programming)的概念和技术。ACCP,全称为 Aptech Certified Computer Professional,是一个国际...

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

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

    面试问卷-java&Oracle.doc

    - **问题3**:可能测试对集合框架的理解,如ArrayList和LinkedList的区别,HashMap的工作原理。 - **问题4**:可能涵盖多线程,如线程同步、死锁避免。 - **问题5**:可能涉及输入/输出(I/O)流,如文件读写、网络...

    java & web 面试题

    6. **解释一下 Java 集合框架中的 List、Set 和 Map 的区别。** - List 有序且允许重复元素,常用接口有 ArrayList 和 LinkedList;Set 不允许重复元素,如 HashSet 和 TreeSet;Map 存储键值对,如 HashMap 和 ...

    javaapplication和javaapplet的区别

    ### Java Application与Java Applet的区别 #### 一、概述 Java是一种广泛使用的编程语言,它以其平台无关性和安全性而著称。在Java中,有两种主要的应用类型:Java Application(Java应用程序)和Java Applet...

    java中&与&&的区别

    总结一下,`&` 和 `&&` 在逻辑表达式中的主要区别在于: 1. `&` 总是评估两边的表达式,无论结果如何,而 `&&`(短路运算符)只有在必须时才会评估第二个表达式。 2. 使用 `&&` 可以提高效率,避免在已知结果为假的...

    JAVA题目&答案

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

    常见的java,android面试题整理

    Servlet和CGI的区别在于,Servlet是基于Java的持久化服务器端组件,而CGI是早期的Web服务器脚本模型,每次请求都会创建新的进程,效率较低。 12. **Android客户端开发与服务端交互**: 客户端通常通过HTTP协议与...

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

    理解Checked和Unchecked异常的区别,以及如何有效地抛出、捕获和处理异常,是编写健壮代码的关键。 6. 容器和布局:容器(如JFrame和JPanel)是GUI组件的容器,而布局管理器则决定了容器中组件的排列方式。掌握不同...

    &和&&的区别

    虽然它们在基本功能上相似,但存在一些关键的区别,这些区别对于理解和编写高效的代码至关重要。 首先,两者都表示逻辑与,这意味着它们都需要两边的表达式都为真才能得到真(true)的结果。例如,如果 `x` 是 1,`...

    java和javax的区别

    ### Java与javax的区别详解 ...理解这两个包的区别对于Java开发者来说至关重要,尤其是在选择合适的工具和技术栈时。通过合理利用这两个包提供的功能,可以有效地提高开发效率并构建出高质量的应用程序。

    Java & Android

    Java与C语言的主要区别在于其**面向对象**的特性,这使得Java在软件开发过程中能够更好地封装、继承和多态。相比之下,C语言是一种**面向过程**的语言,更侧重于函数的调用和执行流程的控制。 - **预处理命令与静态...

    java面经八股文整理

    本文总结了 Java 语言的基础知识,涵盖了 JDK、JRE、JVM 等概念,类和对象的区别、构造方法和普通方法的区别、作用域的四种类型、Integer 与 int 的区别、&和&&的区别、类变量与实例变量的区别、=="和equals的区别等...

Global site tag (gtag.js) - Google Analytics