加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

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

发布时间:2020-12-14 14:28:19 所属栏目:Java 来源:网络整理
导读:在Java的逻辑运算符中,有这么四类:(短路与),都是表示与,区别是只要第一个条件不满足,后面条件就不再判断。而 }else{ span style="white-space:pre" /spanSystem.out.println("没有报错"); } } 输出的是“没有报错”。而将改为nbsp; nbsp; ||和|都是表

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

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

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读