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

作者:lqh 时间:2021-05-30 15:24:26 

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

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

来源:http://blog.csdn.net/qq_37810594/article/details/72621269

标签:Java,运算符
0
投稿

猜你喜欢

  • 详解Maven settings.xml配置(指定本地仓库、阿里云镜像设置)

    2022-04-09 23:45:14
  • C#中登录窗体和欢迎窗体关闭方法分析

    2023-03-23 03:58:25
  • 使用 CliWrap 让C#中的命令行交互(推荐)

    2023-04-19 01:31:51
  • 详解C#中的定时器Timer类及其垃圾回收机制

    2021-07-21 10:57:39
  • java多线程的同步方法实例代码

    2022-02-16 19:30:47
  • 浅谈Java代理(jdk静态代理、动态代理和cglib动态代理)

    2023-06-09 18:57:49
  • 新手小白用C# winform 读取Excel表的实现

    2022-12-27 15:45:12
  • 详解spring security之httpSecurity使用示例

    2023-08-03 09:46:17
  • java swing实现的扫雷游戏及改进版完整示例

    2022-02-27 02:01:18
  • C# Csv实现基本的读写和转换DataTable

    2023-11-20 10:55:22
  • C++11中的可变参数模板/lambda表达式

    2023-06-10 18:20:14
  • 7种形式的Android Dialog使用实例

    2023-02-08 19:41:02
  • java实现单链表之逆序

    2023-05-03 02:01:54
  • 基于Android AppWidgetProvider的使用介绍

    2021-09-27 08:48:19
  • 移动开发Spring Boot外置tomcat教程及解决方法

    2023-08-25 11:47:33
  • springcloud干货之服务注册与发现(Eureka)

    2021-07-08 11:04:23
  • 为何Java8需要引入新的日期与时间库

    2023-12-16 06:02:23
  • timespan使用方法详解

    2022-01-19 07:04:50
  • Java 从Set里面取出有序的记录详解及实例

    2021-07-08 09:07:33
  • opencv3/C++ FLANN特征匹配方式

    2021-08-19 10:17:47
  • asp之家 软件编程 m.aspxhome.com