Java短路运算符和非短路运算符详解

时间:2017-09-15     来源:互联网

你了解Java短路运算符和非短路运算符吗?短路运算符就是我们常用的“&&”、“||”,一般称为“条件操作”。今天华清Java学院小编就来和大家分享一篇Java短路运算符和非短路运算符详解教程。

class Logic{public ststic void main(String[] args){int a=1;int b=1;if(a

in my

control."。这个时候,交换一下“&&”左右两边的表达式,程序立即抛出异常“java.lang.ArithmeticException:

/ by zero”。

class Logic{public ststic void main(String[] args){int a=1;int b=1;if(a==b || b

“||”运算符检查第一个表达式是否返回“true”,如果是“true”则结果必为“true”,不再检查其他内容。

“a/0”是个明显的错误!但短路运算“||”先执行“a==b”判断,返回“true”,遂造成短路,也就不进行“a/0”操作了,程序会打出"That's in my control."。这个时候,交换一下“||”左右两边的表达式,程序立即抛出异常“java.lang.ArithmeticException: / by zero”。

非短路运算符包括 “& 与”、“| 或”、“^ 异或”,一般称为“逻辑操作”

class Logic{public ststic void main(String[] args){int a=1;int b=1;if(a

“&”运算符不会造成短路,它会认认真真的检查每一个表达式,虽然“a

/ by zero”。

/ by zero”。

class Logic{public ststic void main(String[] args){int a=1;int b=1;if(a==b | b

同理,“|”运算符也不会造成短路,虽然“a==b”已经返回“true”了,它还是会继续检查其他内容,以至于终抛出异常“java.lang.ArithmeticException: / by zero”。

“^”运算符道理是一样的,就不在这里罗索了。

后。短路运算符只能用于逻辑表达式内,非短路运算符可用于位表达式和逻辑表达式内。也可以说:短路运算只能操作布尔型的,而非短路运算不仅可以操作布尔型,而且可以操作数值型。

解释一下java的短路运算,Java短路运算符和非短路运算符详解相关推荐

  1. java中北大学ppt总结+课后习题第二章(小宇特详解)

    java中北大学ppt总结+课后习题第二章(小宇特详解) 基本数据类型 Java语言有8种基本数据类型. 逻辑类型:boolean.1字节 整数类型: 1字节整数类型:byte. 2字节整数类型:sh ...

  2. java获取request body_HttpServletRequest获取body内容(字符串/二进制)详解

    首页 > Java Web > SpringMvc应用 > HttpServletRequest HttpServletRequest获取body内容(字符串/二进制)详解 获取HT ...

  3. java中String s=abc及String s=new String(abc)详解

    java中String s="abc"及String s=new String("abc")详解 1.   栈(stack)与堆(heap)都是Java用来在R ...

  4. java一个方法排他调用_Java编程实现排他锁代码详解

    一 .前言 某年某月某天,同事说需要一个文件排他锁功能,需求如下: (1)写操作是排他属性 (2)适用于同一进程的多线程/也适用于多进程的排他操作 (3)容错性:获得锁的进程若Crash,不影响到后续 ...

  5. 蓝桥杯java B组历年省赛真题汇总及题目详解

    蓝桥杯java B组历年省赛真题汇总及题目详解 2019年第十届蓝桥杯省赛真题详解 2018年第九届蓝桥杯省赛真题详解 2017年第八届蓝桥杯省赛真题详解 2016年第七届蓝桥杯省赛真题详解 2015 ...

  6. 【JAVA秘籍心法篇-Spring】Spring XML解析源码详解

    [JAVA秘籍心法篇-Spring]Spring XML解析源码详解 所谓天下武功,无坚不摧,唯快不破.但有又太极拳法以快制慢,以柔克刚.武功外式有拳打脚踢,刀剑棍棒,又有内功易筋经九阳神功.所有外功 ...

  7. 2022年Java面试总结,200多页真题笔记和详解(核心考点、6家大厂)

    为了进大厂,花了很多时间和精力在面试准备上,也刷了很多题.但题刷多了有点怀疑人生,不知道刷的这些题在之后的工作中能不能用到,如果只是为面试而刷题是不是在浪费人生呢? 如果你想进大厂,或者去一个更大.更 ...

  8. java 的 非短路_Java 短路运算符和非短路运算符

    短路运算符就是我们常用的"&&"."||",一般称为"条件操作". class Logic{ public ststic v ...

  9. Java设计模式之五大创建型模式(附实例和详解)

    一.概况 总体来说设计模式分为三大类: (1)创建型模式,共五种:工厂方法模式.抽象工厂模式.单例模式.建造者模式.原型模式. (2)结构型模式,共七种:适配器模式.装饰器模式.代理模式.外观模式.桥 ...

最新文章

  1. Android--混淆打包找不到资源类的…
  2. Python操作JSON和CSV
  3. SAP Marketing Cloud里的contact main facet是什么意思
  4. 双11,2分钟狂挣20亿的神秘大厂,急招.NET!
  5. OSChina 周日乱弹 —— 昨天夜生活很丰满
  6. helpdesk2 foxmail和outlook互导问题
  7. 第三讲:tapestry增删改查---查询数据
  8. 【Effective c++】条款6:若不想使用编译器自动生成的函数就应该明确拒绝
  9. vue php 架构目录,vuex 项目结构目录及一些简单配置介绍
  10. 离散数学计算机科学与技术答案,2计算机科学与技术专业本科离散数学期末复习题2...
  11. 万豪集团精细化在华发展策略;完美日记母公司将收购护肤品牌Eve Lom;赛生药业港交所主板挂牌上市 | 美通企业日报...
  12. xlua生成Wrap代码排除指定dll
  13. 贸易相关术语[C-E]
  14. 惠普服务器蓝屏怎么修复,Win10惠普电脑出现蓝屏?解决教程附上
  15. 【虚拟机里测试Windows PE的方法】
  16. Vue插件报错:Vue.js is detected on this page.
  17. CentOS7:配置防火墙
  18. 做一名合格的网络管理员
  19. 如何简单的模拟发送http post请求
  20. c++ 提取傅里叶描述子_SQL 子查询的优化

热门文章

  1. 先学python还是r-r语言和python有必要都学吗
  2. 为什么你今年的百度产品经理面试挂了?
  3. 车载以太网技术(一)
  4. 用C语言开发NES游戏(CC65) 简介
  5. How add nic driver to initrd
  6. canvas线性渐变实现:根据渐变线角度计算坐标x0,y0,x1,y1
  7. 供应丙烯酰胺-聚乙二醇-琥珀酰亚胺乙酸酯试剂,Acrylamide-PEG-NHS est
  8. 关于Windows 7下的DEP(数据执行保护)
  9. 【SLAM编译错误】CMakeFiles/Makefile2:252: recipe for target 'CMakeFiles/stereo_kitti.dir/all' failed
  10. win10/11上一键切换全拼/双拼