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

  

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

  

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

  

看下面的程序:
  

        公共静态void main (String [] args) {//TODO自动生成方法存根   如果((23 !=23),和(100/0==0)){   System.out.println(“运算没有问题。”);   其他}{   & lt;跨度比;& lt;/span> System.out.println(“没有报错”);   }   }   之前      

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

        异常的线程“主要”. lang。由零ArithmeticException:/之前      

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

  

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

  

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

  

看下面的程序:
  

        公共静态void main (String [] args) {//TODO自动生成方法存根   如果((23==23)| | (100/0==0)){   System.out.println(“运算没有问题。”);   其他}{   System.out.println(“没有报错”);   }   }   之前      

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

  

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

  

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

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