Java语言中&&与& ||与|的区别是什么

 更新时间:2017年04月04日 11:33:10   作者:yrc_Note  
这篇文章主要介绍了Java语言中&&与& ||与|的区别是什么的相关资料,需要的朋友可以参考下

1、运算符两边的变量为boolean变量时

      先列出代码:

public class Test {
  public static void main(String[] args) {
    boolean a = false;
    boolean b = true;
    if (a && b) {
      // do something
      System.out.println("a&&b");
    }
    if (a & b) {
      // do something
      System.out.println("a&b");
    }
  }
}

虽然两个if语句打印结果时一样的!!!(都没有输出)

但是实际的执行过程却是不一样的(自己可以debug调试试试)

&& 逻辑运算and,当两个条件都为真的时候才为真。

||逻辑运算or,只要有一个条件为真就为真。

而& 和 | 属于位运算。

逻辑运算与位运算最大的区别在于

逻辑运算支持短路运算,

而位运算不支持短路运算。

短路运算就是 位运算if(条件1 & 条件2){}

当第一个条件不满足的时候还会判断条件2,

但是逻辑运算if(条件1 &&条件2){}

当第一个条件不满足的时候不会判断条件2.

逻辑|| 跟位运算| 同上。

2、运算符两边的变量为int类型变量时 

      只能执行a&b的按位与运算或者a|b执行按位或运算。正常算即可

以上所述是小编给大家介绍的Java语言中&&与& ||与|的区别,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的,在此也非常感谢大家对脚本之家网站的支持!

相关文章

  • SpringBoot+Vue项目部署上线的实现示例

    SpringBoot+Vue项目部署上线的实现示例

    本文主要介绍了SpringBoot+Vue项目部署上线的实现示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2024-02-02
  • idea替换快捷键,批量处理对象的操作

    idea替换快捷键,批量处理对象的操作

    这篇文章主要介绍了idea替换快捷键,批量处理对象的操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-02-02
  • Flink结合Kafka实现通用流式数据处理

    Flink结合Kafka实现通用流式数据处理

    这篇文章将和大家一起深入探讨Flink和Kafka的关系以及它们在数据流处理中的应用,并提供一些最佳实践和实际案例,希望对大家有一定的帮助
    2025-03-03
  • 四步轻松搞定java web每天定时执行任务

    四步轻松搞定java web每天定时执行任务

    本篇文章主要介绍了四步轻松搞定java web每天定时执行任务,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-01-01
  • 浅析对Java关键字final和static的理解

    浅析对Java关键字final和static的理解

    本文主要给大家谈谈小编对java关键字final和static的理解,本文给大家介绍的较详细,需要的朋友参考参考下
    2017-04-04
  • SpringBoot项目实用功能之实现自定义参数解析器

    SpringBoot项目实用功能之实现自定义参数解析器

    这篇文章主要介绍了SpringBoot项目实用功能之实现自定义参数解析器,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-08-08
  • Java日常练习题,每天进步一点点(14)

    Java日常练习题,每天进步一点点(14)

    下面小编就为大家带来一篇Java基础的几道练习题(分享)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧,希望可以帮到你
    2021-07-07
  • 详解SpringBoot定制@ResponseBody注解返回的Json格式

    详解SpringBoot定制@ResponseBody注解返回的Json格式

    这篇文章主要介绍了详解SpringBoot定制@ResponseBody注解返回的Json格式,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-11-11
  • Java AQS(AbstractQueuedSynchronizer)源码解析

    Java AQS(AbstractQueuedSynchronizer)源码解析

    AbstractQueuedSynchronizer被称为队列同步器,简称为大家熟知的AQS,这个类可以称作concurrent包的基础。本文将通过剖析源码来看看AQS是如何工作的,感兴趣的可以了解一下
    2023-02-02
  • JAVA正则表达式提取key-value类型字符值代码实例

    JAVA正则表达式提取key-value类型字符值代码实例

    这篇文章主要给大家介绍了关于JAVA正则表达式提取key-value类型字符值的相关资料,文中通过实例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2022-10-10

最新评论