java短路运算符和逻辑运算符的区别
Java  /  管理员 发布于 2年前   133
/* * 逻辑运算符——不论是什么条件都要执行左右两边代码 * 短路运算符——我认为在底层就是利用物理电路的“并联”和“串联”实现的 * 原理很简单,并联电路代表短路或(||),串联电路代表短路与(&&)。 * * 并联电路两个开关只要有一个开关闭合,电路就会通。 * 类似于短路或(||),只要有其中一个为true(开关闭合)是就不必执行右边的代码 * 并联电路两个开关其中有一个开关没有闭合(false),电路不会通,要继续执行右边的代码。 * * 串联电路(&&)原理是必须是两个开关都闭合电路才能通,所以原理可想而知咯! * 左边的开关闭合(true)仍需判断右边的开关是否闭合,所会执行右边的代码。 * 左边的开关没有闭合(false) 不用执行右边的代码。 * 因为左边开关没有闭合!右边的开关无论是否闭合电路都不会通电,所以不执行右边的代码。 * * ——不知不觉突然回顾了那么多年前的物理课知识,多少回忆涌上心头, * 记得那时候拆了好多家里的电池,到处找小灯泡去连接电路, * 有时候电路短路,弄的火光闪烁... */int a = 0;int b = 0;int c = 0;int d = 0;/* flag = true逻辑或1短路或0逻辑与1短路与1flag = false逻辑或1短路或1逻辑与1短路与0 */ boolean flag = false; // | 和 || 的区别if(flag | a++ > 10) {System.out.println("逻辑或" + a);}else {System.out.println("逻辑或" + a);}if(flag || b++ >10) {System.out.println("短路或" + b);}else {System.out.println("短路或" + b);}// & 和 && 的区别if(flag & c++ > 10) {System.out.println("逻辑与" + c);}else {System.out.println("逻辑与" + c);}if(flag && d++ >10) {System.out.println("短路与" + d);}else {System.out.println("短路与" + d);}
阿凡达123 在
golang 怎么做热更新中评论 也可以看看这个:https://github.com/edwingeng/hot..博主 在
hyperf框架常用命令-在centos7中退出命令及在docker容器中退出命令中评论 @路过的靓仔:cdn静态资源被墙,已修复..GGGGGGGGG 在
layui框架常用输入框介绍中评论 写的很好解决问题..路过的靓仔 在
hyperf框架常用命令-在centos7中退出命令及在docker容器中退出命令中评论 剩下好多 wait 状态的..激光豆芽 在
为什么你不能安逸?国内996为什么没有国外955香?中评论 国内现在无意义的内卷太多了..
Copyright·© 2019 侯体宗版权所有·
粤ICP备20027696号