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

 更新时间:2017年05月22日 10:57:53   投稿:lqh  
这篇文章主要介绍了Java中&&与&,||与|的区别的相关资料,需要的朋友可以参考下

在Java的逻辑运算符中,有这么四类:&&(短路与),&,|,||(短路或)。

&&和&都是表示与,区别是&&只要第一个条件不满足,后面条件就不再判断。而&要对所有的条件都进行判断。

看下面的程序:

public static void main(String[] args) { 
    // TODO Auto-generated method stub 
    if((23!=23)&&(100/0==0)){ 
      System.out.println("运算没有问题。"); 
    }else{ 
    <span style="white-space:pre">  </span>System.out.println("没有报错"); 
    } 
  } 

输出的是“没有报错”。而将&&改为&就会如下错误:

Exception in thread "main" java.lang.ArithmeticException: / by zero 

原因是:&&时判断第一个条件为false,后面的100/0==0这个条件就没有进行判断。

             &时要对所有的条件进行判断,所以会对后面的条件进行判断,所以会报错。

             ||和|都是表示“或”,区别是||只要满足第一个条件,后面的条件就不再判断,而|要对所有的条件进行判断。

看下面的程序:

  public static void main(String[] args) { 
    // TODO Auto-generated method stub 
    if((23==23)||(100/0==0)){ 
      System.out.println("运算没有问题。"); 
    }else{ 
   System.out.println("没有报错"); 
    } 
  } 

此时输出“运算没有问题”。若将||改为|则会报错。

原因是:||判断第一个条件为true,后面的条件就没有进行判断就执行了括号中的代码,而|要对所有的条件进行判断,
所以会报错。

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

相关文章

  • 一文快速了解spring boot中的@idempotent注解

    一文快速了解spring boot中的@idempotent注解

    idempotence注解是RESTful API设计中一个重要的概念,它可以保证操作的可靠性和一致性,下面这篇文章主要给大家介绍了关于spring boot中@idempotent注解的相关资料,需要的朋友可以参考下
    2024-01-01
  • Java设计模式之装饰者模式详解

    Java设计模式之装饰者模式详解

    这篇文章主要为大家详细介绍了java设计模式之装饰者模式,装饰者模式是一种结构式模式,感兴趣的朋友可以参考一下
    2021-10-10
  • java基本教程之线程休眠 java多线程教程

    java基本教程之线程休眠 java多线程教程

    本文对javaThread中sleep()方法进行介绍,sleep() 的作用是让当前线程休眠,即当前线程会从“运行状态”进入到“休眠(阻塞)状态”,大家参考使用吧
    2014-01-01
  • Java面试题解析之判断以及防止SQL注入

    Java面试题解析之判断以及防止SQL注入

    这篇文章主要介绍了Java面试题解析之判断以及防止SQL注入,小编觉得还是挺不错的,具有一定借鉴价值,需要的朋友可以参考下
    2018-02-02
  • springboot AutoConfigureAfter控制Bean的注入顺序方法详解

    springboot AutoConfigureAfter控制Bean的注入顺序方法详解

    这个文章主要介绍一下@AutoConfigureAfter在spring框架中的作用,在使用过程中,很多开发人员在使用它的时候都出现了问题,问题比较多的就是它们的注册顺序总不是我们预期的,下面介绍一下正常的使用方法,感兴趣的朋友一起看看吧
    2024-05-05
  • java中Socket设置超时时间的两种方式

    java中Socket设置超时时间的两种方式

    这篇文章主要介绍了java中Socket设置超时时间的两种方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-11-11
  • SpringBoot如何读取application.properties配置文件

    SpringBoot如何读取application.properties配置文件

    这篇文章主要介绍了SpringBoot如何读取application.properties配置文件问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-05-05
  • Spring MVC全局异常实例详解

    Spring MVC全局异常实例详解

    这篇文章主要给大家介绍了关于Spring MVC全局异常的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧。
    2018-02-02
  • Java编程实现非对称加密的方法详解

    Java编程实现非对称加密的方法详解

    这篇文章主要介绍了Java编程实现非对称加密的方法,简单讲述了非对称加密的概念、原理,并结合实例形式分析了java实现DH加密解密、RSA加密解密、ElGamal加密等具体操作技巧,需要的朋友可以参考下
    2017-08-08
  • MyBatis常见报错问题及解决方案

    MyBatis常见报错问题及解决方案

    这篇文章主要介绍了MyBatis常见报错问题及解决方案,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-11-11

最新评论