java中|和||的使用和区别「建议收藏」

java中|和||的使用和区别「建议收藏」区别||为逻辑运算符,而|为位运算符。位运算可以进行进行int数的或运算。例:4|1=54写作二进制数1001写作二进制数001做或运算得出101即5||只要满足第一个条件,后面的条件就不再判断,而|要对所有的条件进行判断。我们定义一个链表classListNode{intval;ListNodenext;ListNode(intx){val=x;}}Lis

大家好,又见面了,我是你们的朋友全栈君。

区别

  1. || 为逻辑运算符,而 | 为位运算符。

      位运算可以进行进行int数的或运算。
      例:4|1=5
      4写作二进制数 1 0 0
      1写作二进制数 0 0 1
      做或运算得出  1 0 1   即5
    
  2. || 只要满足第一个条件,后面的条件就不再判断,而 | 要对所有的条件进行判断。

    我们定义一个链表

    class ListNode { 
         
        int val;
        ListNode next;
        ListNode(int x) { 
          val = x; }
    }
    
    ListNode a=null;
    

    写出一个if判断语句,共四种写法

    if(a==null|a.next==null)//1
    if(a==null||a.next==null)//2
    if(a.next==null|a==null)//3
    if(a.next==null||a==null)//4
    

    以上四种写法中,1、3、4写法均会抛出NullPointerException异常
    1. | 要对所有的条件进行判断,故在a.next == null的判断中抛出异常
    2. || 只要满足第一个条件,后面的条件就不再判断,a==null满足,返回true
    3. 同1的错误
    4. 判断前一个条件,a.next抛出异常

    以上为||和|的区别和使用,相同&和&&也可以同上思考

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/157165.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 小波阈值去噪

    小波阈值去噪目录1.概念2.原理3.影响降噪效果的因素3.1小波基的选择3.2分解层数的选择3.3阈值的选择3.4阈值函数的选择4.MATLAB代码参考文献1.概念小波分析即用Mallat塔式算法对信号进行降阶分解。该算法在每尺度下将信号分解成近似分量与细节分量。近似分量表示信号的高尺度,即低频信息;细节分量表示信号的低尺度,即高频信息。对含有噪声的信号,噪声分量的主要能量集中在小波分解的细节分量中。2.原理小波阈值去噪的实质为抑制信号中无用部分、增强有用部分的过

    2022年6月16日
    48
  • 怎样完全卸载tensorflow?

    怎样完全卸载tensorflow?查看tensorflow版本sudopipshowtensorflow卸载:sudopipuninstallprotobufsudopipuninstalltensorflow安装:sudopipinstall–upgrade

    2022年6月22日
    84
  • 分布式事务atomikos的原理_spring分布式事务

    分布式事务atomikos的原理_spring分布式事务atomikos+jta+JdbcTemplate依赖包(部分)事务等配置jta.properties(修改默认配置使用)测试,JdbcTemplate操作数据库@Transactional

    2022年8月5日
    2
  • 谷歌离线地图开发教程视频_2019谷歌卫星地图高清版下载

    谷歌离线地图开发教程视频_2019谷歌卫星地图高清版下载bigemap如何发布google离线地图及二次开发API1.说明bigemap离线地图开发环境支持谷歌地图、百度地图、高德地图等等所有常用地图类型,支持在局域网内的地图部署、二次开发。2.实现第一步:下载安装离线地图开发环境BIEGMAP离线地图服务器(开发版)下载安装好之后,启动软件,如下图所示:①如果你的电脑连接到网络,这里可以直接点击…

    2022年9月15日
    0
  • 如何科学高效的学习Web前端开发?[通俗易懂]

    近几年,web前端开发工程师越来越火了,薪资待遇也快接近后端开发工程师了。很多准备入行前端开发工程师的小伙伴们,不知道准备得怎么样了呢?有的朋友在想方设法的学习,争取在年后的金九银十能靠实力找到一份满意的工作!有的小伙伴在准备准备回家过个团圆年,来年再战!还有的小伙伴很迷茫,想学前端,却没有方向!这篇文章,就是教你零基础如何高效的学习web前端。web前端开发(也称为客户端开发)主要是通过html,css,JavaScript,ajax,DOM等前端技术,实现网站在客服端的正确显示及交互功能。在早期.

    2022年4月12日
    61
  • 国外常用的免费DNS域名解析服务器「建议收藏」

    国外常用的免费DNS域名解析服务器「建议收藏」在国内注册的域名默认使用的是国内域名注册商提供的DNS服务器,国内的DNS服务器可能受政策的影响停止解析域名,网络上传说以后没有BeiAn的域名国内将不给解析。为了避免国内的这些政策,建议使用国外的域名服务:如果您还没有注册域名,请不要在国内注册域名。如果您已经在国内注册了域名,但由于国内注册商赖皮,不给您转移密码,您还可以使用国外的免费DNS服务器。国外免费DNS

    2022年6月22日
    184

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号