服务器之家:专注于服务器技术及软件下载分享
分类导航

PHP教程|ASP.NET教程|Java教程|ASP教程|编程技术|正则表达式|C/C++|IOS|C#|Swift|Android|VB|R语言|JavaScript|易语言|vb.net|

服务器之家 - 编程语言 - Java教程 - Java 逻辑运算符中与&,||与|的区别

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

2020-10-22 17:32qq_37810594 Java教程

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

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

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

看下面的程序:

?
1
2
3
4
5
6
7
8
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("没有报错");
    }
  }

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

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

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

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

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

看下面的程序:

?
1
2
3
4
5
6
7
8
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,后面的条件就没有进行判断就执行了括号中的代码,而|要对所有的条件进行判断,
所以会报错。

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

原文链接:http://blog.csdn.net/qq_37810594/article/details/72621269

延伸 · 阅读

精彩推荐