java短路运算符和逻辑运算符的区别
Java  /  管理员 发布于 3年前   263
/* * 逻辑运算符——不论是什么条件都要执行左右两边代码 * 短路运算符——我认为在底层就是利用物理电路的“并联”和“串联”实现的 * 原理很简单,并联电路代表短路或(||),串联电路代表短路与(&&)。 * * 并联电路两个开关只要有一个开关闭合,电路就会通。 * 类似于短路或(||),只要有其中一个为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);}
博主 在
2023年国务院办公厅春节放假通知:1月21日起休7天中评论 @ xiaoB 你只管努力,剩下的叫给天意;天若有情天亦老,..xiaoB 在
2023年国务院办公厅春节放假通知:1月21日起休7天中评论 会不会春节放假后又阳一次?..BUG4 在
你翻墙过吗?国内使用vpn翻墙可能会被网警抓,你需了解的事中评论 不是吧?..博主 在
go语言+beego框架中获取get,post请求的所有参数中评论 @ t1 直接在router.go文件中配就ok..Jade 在
如何在MySQL查询中获得当月记录中评论 Dear zongscan.com team, We can skyroc..
Copyright·© 2019 侯体宗版权所有·
粤ICP备20027696号