java中|和||的使用和区别
区别
|| 为逻辑运算符,而 | 为位运算符。
位运算可以进行进行int数的或运算。例:4|1=54写作二进制数 1 0 01写作二进制数 0 0 1做或运算得出 1 0 1 即5
|| 只要满足第一个条件,后面的条件就不再判断,而 | 要对所有的条件进行判断。
我们定义一个链表
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抛出异常以上为||和|的区别和使用,相同&和&&也可以同上思考
java中|和||的使用和区别相关推荐
- java中的异常种类和区别以及处理机制和区别
java中的异常种类和区别以及处理机制和区别 按照异常需要处理的时机分为编译时异常(也叫强制性异常)也叫 CheckedException 和运行时异常(也叫非强制性异常)也叫 RuntimeExce ...
- java中ArrayList和LinkedList的区别
首先来看ArrayList和LinkedList的集成类和接口的区别.// lang java public class ArrayList<E> extends AbstractList ...
- java中Runnable和Callable的区别
文章目录 运行机制 返回值的不同 Exception处理 java中Runnable和Callable的区别 在java的多线程开发中Runnable一直以来都是多线程的核心,而Callable是ja ...
- java中wait和sleep的区别
文章目录 Wait和sleep的区别 唤醒wait和sleep java中wait和sleep的区别 在本篇文章中,我们将会讨论一下java中wait()和sleep()方法的区别.并讨论一下怎么使用 ...
- java throw与throws_基于Java中throw和throws的区别(详解)
系统自动抛出的异常 所有系统定义的编译和运行异常都可以由系统自动抛出,称为标准异常,并且 Java 强烈地要求应用程序进行完整的异常处理,给用户友好的提示,或者修正后使程序继续执行. 语句抛出的异常 ...
- Java中重载和复写的区别
Java中重载和复写的区别 重载(overload) 复写(override) 区别和联系 重载(overload) 函数重载的最突出的例子就是类的构造函数,用户定义一个对象时可能会提供多种参数组合: ...
- Java中equals()方法和==的区别分析
Java中equals方法和==的区别分析 equals(Object obj)方法,将对象与传入的obj进行比较,相等返回true,否则返回false.equals方法和"==" ...
- java is instance of_详谈Java中instanceof和isInstance的区别
一次性搞定instanceof和isInstance,instanceof和isInstance长的非常像,用法也很类似,先看看这两个的用法: obj.instanceof(class) 也就是说这个 ...
- throws java_基于Java中throw和throws的区别(详解)
系统自动抛出的异常 所有系统定义的编译和运行异常都可以由系统自动抛出,称为标准异常,并且 Java 强烈地要求应用程序进行完整的异常处理,给用户友好的提示,或者修正后使程序继续执行. 语句抛出的异常 ...
- Java中notify和notifyAll的区别 - 何时以及如何使用
Java notify vs notifyAll notify和notifyAll方法之间有什么区别是棘手的Java问题之一! Condition 是个什么玩意? 提几个问题,从问题中去了解去学 ...
最新文章
- 有钱任性!字节跳动又给员工发钱了!字节程序员:吓一跳,莫名其妙多了几万块!...
- 支付宝sdk 支付订单查询失败
- Docker网络相关
- android4.0 编译报错 Xmx2048m错误 .
- fgo服务器维护补偿什么时候才有,fgo国服4月12日版本版本更新公告 维护18个小时 补偿18个圣晶石...
- Docker 基础介绍及配置安装 [一]
- 中科院Kaggle全球文本匹配竞赛华人第1名团队-深度学习与特征工程
- C#连接SQL Server数据库
- Conda环境与Python解释器
- 转~解决VS2017 C++无法打开源文件 WinSock2.h Windows.h mswsock.h Ws2tcpip.h
- FatFs- 通用FAT文件系统模块
- sketch软件_8款原型设计工具与Sketch的强强组合,轻松构建交互原型
- Raspberry3B+搭建有线路由器-实现网口转发
- YYC松鼠视频短信对接教程
- linux 运维工程师必备技能
- 融资轮数划分 天使轮 种子轮 preA A A+ B轮 C轮
- 【华为机试】【校招】【Java】机器人走迷宫(DFS)
- C语言实现定积分的计算
- 【WCN6856】WiFi 5G 接口启动失败问题解决
- 51单片机实验——按键外部中断实现四进制计数器
热门文章
- 移动硬盘插入提示需要格式化RAW_分区变成RAW格式怎么办?
- 基于深度信念网络的事件识别
- meltdown linux 补丁,宋宝华: ARM64 Linux meltdown修复补丁KPTI的最重要3个patch
- 国产系统deepin。为什么要国产化?国产化意味着什么?(含Deepin系统部分问题解决)
- 组成计算机cpu的两大部件是,组成计算机的cpu的两大部分是什么
- 虚拟机使用cheese调用摄像头黑屏问题解决
- 改变iOS searchBar中textField的背景颜色
- 兜兜转转~~,忘不了的break!! 忘不了的continue!!!!
- android如何虚标内存,答疑 | 手机运存明明是6GB,但实际可用才3.5GB?是虚标还是什么?...
- 任务管理器被停用解决方法