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)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Kafka 是什么?

    Kafka 是什么?前言本文隶属于专栏《1000个问题搞定大数据技术体系》,该专栏为笔者原创,引用请注明来源,不足和错误之处请在评论区帮忙指出,谢谢!本专栏目录结构和参考文献请见1000个问题搞定大数据技术体系正文Kafka的诞生背景2011年年初,美国领英公司(Linkedin)开源了一款基础架构软件,以奥地利作家弗兰兹・卡夫卡(FranzKafka)的名字命名。之后Linkedin将其贡献给Apache基金会,随后该软件于2012年10月成功完成孵化并顺利晋升为Apache

    2022年10月13日
    1
  • Android NDK开发:打包so库及jar包供他人使用

    Android NDK开发:打包so库及jar包供他人使用Android的NDK开发相信各位已经精通各种姿势了。不过基本上都是那种native代码和java代码都在同一个工程中,因为应用从头到脚都是我们自己的,也不需要分离。但有时候可能需要我们自己把某些库打包起来供别人使用,或者使用别人提供给我们的库。本篇文章及下篇文章就讲讲so库如何打包。一、目标及方式这篇文章会讲第一种方式来打包so库,这种方式是基于jni层的,需要我们同时提供接口的jar包…

    2022年6月22日
    147
  • 论文写作——origin画图[通俗易懂]

    论文写作——origin画图[通俗易懂]一origin的安装详见下面网址,内涵下载路径和破解方法。http://www.ddooo.com/softdown/51005.htm二origin画图1、柱状图①打开后页面如下所示。A(X)代表X轴的数据,B(Y)代表Y轴的数据。②将数据填入中间的book1中。book的作用和Excel中很类似,我们可以按照自己的需要添加sheet,添加book。我们将…

    2022年4月19日
    75
  • IDEA git配置[通俗易懂]

    1、idea配置git(versioncontrol)1.2、拉取代码idea菜单上选择VCS输入git代码地址,注意是http协议的地址不要用git协议的地址,目前用git协议的地址老是报错,因为git协议的址找不到配置sshprivatekey的地方,后面找到方法再更一版。点确定,代码就可以拉下来了。1.3、拉取代码提交代码快捷键ct…

    2022年4月14日
    66
  • 【C语言小练习】CMD控制台版贪吃蛇[通俗易懂]

    【C语言小练习】CMD控制台版贪吃蛇[通俗易懂]【C语言小练习】CMD控制台版贪吃蛇请用VC6或者VS系列编译器编译!#include#include#include#include//———————————————//1.全局数据constunsignedintStageLength=18;//舞台宽度constunsignedintStageHeight=8;//舞台高度constDWORDGameSpeed=350

    2025年9月12日
    8
  • Linux下更改文件权限[通俗易懂]

    Linux下更改文件权限[通俗易懂]目录查看文件权限修改文件权限查看文件权限查看文件权限可以通过ls-l命令查看,如下所示:如果只想查看某一个文件的权限,可以使用grep,如下所示:可以发现,每一个文件的第一个字段都是由r、w、x等10个字符构成,这10个字符所组成的字符串反映了文件的权限。在linux下,文件权限分为三种:可读权限(read)、可写权限(write)以及可执行权限(execut…

    2022年7月26日
    10

发表回复

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

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