从零学Java(15)之逻辑运算符02
Posted 编程界明世隐
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了从零学Java(15)之逻辑运算符02相关的知识,希望对你有一定的参考价值。
作者简介
作者名:编程界明世隐
简介:CSDN博客专家,从事软件开发多年,精通Java、javascript,博主也是从零开始一步步把学习成长、深知学习和积累的重要性,喜欢跟广大ADC一起打野升级,欢迎您关注,期待与您一起学习、成长、起飞!
导航
✪ 从零学Java系列目录索引
◄上一篇 14.逻辑运算符01
►下一篇待更新
引言
♀ 小AD:明哥我来了
♂ 明世隐:来了呀,老妹儿。
♀ 小AD:明哥我要学Java
♂ 明世隐:哦豁,这么主动,开窍了撒
♀ 小AD:对啊,我回去还去网上查了下,我发现逻辑运算符你还没讲完。
♂ 明世隐:看来是下了功夫哈,是什么让你突然这么自觉了呢,是星星吗?
♀ 小AD:没有拉,我就是爱学习的妹儿。
♂ 明世隐:得我就信你一回,今天来学习逻辑运算符的第二部分,短路逻辑运算符。
♀ 小AD:还短路逻辑运算符,咋不长路逻辑运算符呢。
♂ 明世隐:不服是吧,来来来,让你看看。
概念
“短路与”用 “&&” 表示,与&是一样的意思,就是两边都为true结果才会为true,有一边是false则为false,一旦发现左边是false了,右边就不执行了,因为结果一定是false,所以可以提高效率。
“短路或”用“||”表示,与 | 一样,两边只要有一个为true,则结果就为true,所以一旦左边为true了,后面的就无需执行了,因为返回结果就是true,也可以提高效率。
分类
符号 | 说明 | 举例 |
---|---|---|
&& | 短路与 | 作用与 & 相同,但是有短路效果 |
|| | 短路或 | 作用与 | 相同,但是有短路效果 |
逻辑与
package learnJava.P15;
public class Learn1 {
public static void main(String[] args) {
int a = 10;
int b = 20;
//先执行a>10的判断,此时为false,然后a++要执行,所以a=11,因为左边已经判断了为false所以&&右边已经没必要执行了
System.out.println(a++>10&&b++>10);
System.out.println(a);//执行了a++ 所以a=11
System.out.println(b);//没有执行b++ 所以b=20
}
}
运行结果:
false
11
20
♀ 小AD:哥我看你的注释我也看明白了,意思是左边已经为false了,右边就不会执行了。
♂ 明世隐:嗯,就这个意思,没什么难的。
♀ 小AD:我的小鲁班已经被暴君打死了,敌方刺客就没必要来刺杀了,是这个意思吧
♂ 明世隐:说的没有毛病,就是飘的太远了。
♀ 小AD:是这个意思就成,就是提高了效率,就是所谓的短路效果吧。
♂ 明世隐:对的
逻辑或
package learnJava.P15;
public class Learn2 {
public static void main(String[] args) {
int a = 10;
int b = 20;
//先执行a>=10的判断,此时为true,然后a++要执行,所以a=11,因为左边已经判断了为true所以||右边已经没必要执行了
System.out.println(a++>=10||b++>10);
System.out.println(a);//执行了a++ 所以a=11
System.out.println(b);//没有执行b++ 所以b=20
}
}
运行结果:
true
11
20
♀ 小AD:哥,这个我看懂了,a++>=10这个返回是true,所以后面的没必要执行了。
♂ 明世隐:是的哟,这个跟 && 很相似,&&是判断false就不执行后面,|| 是判断为true就不再执行后面,达到短路的效果。
♀ 小AD:嗯我学会了,那要是前面那句为false的话,后面的还是要执行的,没错吧。
♂ 明世隐:没错,这个 || 两边条件,只要有一个为true就可以,所以第一个为false,就会去看看后面的成立否,把代码改一下就好 ,a++>=10,把等号去掉即可。
package learnJava.P15;
public class Learn2 {
public static void main(String[] args) {
int a = 10;
int b = 20;
//先执行a>10的判断,此时为false,然后a++要执行,所以a=11,因为左边已经判断了为false,所以||右边也需要执行
System.out.println(a++>10||b++>10);
System.out.println(a);//执行了a++ 所以a=11
System.out.println(b);//执行了b++ 所以b=21
}
}
运行结果:
true
11
21
♀ 小AD:看到了,b++也执行了,证明前面的为false,后面会执行。
♂ 明世隐:对,这么快就学废了呀!厉害哦,这个短路实现以后在项目中会经常的用到,所以要好好理解。
♀ 小AD:那必须的,也不看看我什么天赋,分分钟学会,来明哥,我来举个例子。
♂ 明世隐:不,你不想,今天说什么也不能举了,下节再举,我受不了,溜了溜了。
♀ 小AD:你。。。。
小结
这节总结了“逻辑运算符02”,希望能对大家有所帮助,请各位小伙伴帮忙 【点赞】+【收藏】+ 【评论区打卡】, 如果有兴趣跟小明哥一起学习Java的,【关注一波】不迷路哦。
评论区打卡一波让我知道你,明哥会持续关注你的学习进度哦!
导航
✪ 从零学Java系列目录索引
◄上一篇 14.逻辑运算符01
►下一篇待更新
热门专栏推荐
1.Java小游戏系列(俄罗斯方块、飞机大战、植物大战僵尸等)
2.JavaWeb项目实战(图书管理、在线考试、宿舍管理系统等)
3.JavaScript精彩实例(飞机大战、扫雷、贪吃蛇、验证码等)
4.Java小白入门200例
5.从零学Java、趣学Java、以王者荣耀角度学Java
另外
为了帮助更多小白从零进阶Java工程师,从CSDN官方那边搞来了一套 《Java 工程师学习成长知识图谱》,尺寸 870mm x 560mm,展开后有一张办公桌大小,也可以折叠成一本书的尺寸,原件129元现价 29 元,先到先得,有兴趣的小伙伴可以了解一下!
以上是关于从零学Java(15)之逻辑运算符02的主要内容,如果未能解决你的问题,请参考以下文章