java 短路判断_随笔 | 奇淫技巧 | Java:记 return 和短路运算符的妙用
在阅读 AtomicStampedReference 的源码中,在 compareAndSet() 方法发现一段代码:
return
expectedReference == current.reference &&
expectedStamp == current.stamp &&
//上方条件全部符合且为True时,执行下方代码
((newReference == current.reference &&
newStamp == current.stamp) ||
casPair(current, Pair.of(newReference, newStamp)));
即在 return 执行方法,并获取最终结果。我编写了一段代码用以测试:
public class Main {
public static void main(String[] args) {
Main main = new Main();
System.out.println(
main.executeIsTrue()
);
System.out.println();
System.out.println(
main.executeIsFalse()
);
}
boolean executeIsTrue() {
return
//这行判断结果为True,可以执行say(String word)方法
(retTrue() && retTrue()) &&
//上述两条都为True,则执行下面代码
(print("OK"));
}
boolean executeIsFalse() {
return
//这行判断结果为False,不能执行say(String word)方法
(retTrue() && retFalse()) &&
//上述两条都为True,则执行下面代码
(print("OK"));
}
boolean retTrue() { return true; }
boolean retFalse() { return false; }
boolean print(String word) { System.out.println(word); return true; }
}
得到返回结果:
OK
true
false
System.out.println(true && false); //结果为false
System.out.println(true && true); //结果为true
System.out.println(false && false); //结果为false
System.out.println(false && true); //结果为false
即充分利用判断运算符(&&、||)返回 boolean 的短路,实现在 return 中实现类似 if 语句的判断。
java 短路判断_随笔 | 奇淫技巧 | Java:记 return 和短路运算符的妙用相关推荐
- 50个Pandas的奇淫技巧:向量化字符串,玩转文本处理
大家好,我是小伍哥. 数据处理,也是风控非常重要的一个环节,甚至说是模型成败的关键环节.因此,娴熟简洁的数据处理技巧,是提高建模效率和建模质量的必要能力.这里开个专题,总结下Pandas的使用方法,方 ...
- JavaScript:探索神秘的旁门左道奇淫技巧
引言: JavaScript作为一种广泛使用的编程语言,具有出色的灵活性和强大的功能.除了其常规用途外,它还隐藏着一些奇淫技巧,这些技巧可以让你在编程过程中事半功倍.本文将揭示JavaScript的一 ...
- 【算法练习】80.字符串轮转——奇淫技巧
[算法练习]80.字符串轮转--奇淫技巧 ⭐加入组队刷题,每日一题,每天进步⭐ 看完大家的操作,感觉自己太傻了 --leetcode此题热评 前言 哈喽,大家好,我是一条. 糊涂算法,难得糊涂 点击跳 ...
- 【JavaScript】转载:JS高端奇淫技巧
转自 : https://blog.csdn.net/github_38885296/article/details/91038735 感谢作者(流浪的狗和一坨屎)分享 众所周知, JavaScrip ...
- JavaScript奇淫技巧:反调试
JavaScript奇淫技巧:反调试 本文,将分享几种JS代码反调试技巧,目标是:实现防止他人调试.动态分析自己的代码. 检测调试,方法一:用console.log检测 代码: var c = new ...
- 【Python奇淫技巧】用pandas的read_html函数仅一行代码实现网页爬虫
目录 一.介绍read_html()函数 二.分析爬取目标页面 三.代码讲解 四.同步视频讲解 一.介绍read_html()函数 喜欢Python编程的小伙伴你知道吗,python的pandas库除 ...
- JavaScript奇淫技巧:压缩并加密图片
本文将用JavaScript实现两个颇有技术含量的功能:压缩图片.加密图片. 直入正题: 一.压缩图片 压缩原理: 将图片读入canvas,并使用canvas的toDataURL方法将图片base64 ...
- SpringCloudOpenFeign奇淫技巧
SpringCloudOpenFeign奇淫技巧 feign之requestInterceptor使用 requestInterceptor 一般使用场景:添加token.Authorization. ...
- JS高端奇淫技巧(持续更新)
众所周知, JavaScript是一门很骚的语言, 写一句话有很多种表达方式, 语法怪异而风骚, 自由而散漫, 或许这就是JS成为最流行语言的原因吧. 本文收集了JS开发中常用的各种奇淫技巧, 一句话 ...
最新文章
- 宾阳 计算机 培训,宾阳县职业技术学校
- 将shell脚本转为python_shell脚本将python脚本加入Linux系统服务
- python中ans的用法_Python的一些用法分享
- 计算机网络电信号误差,用0V~5V方式传输远方温度信号的弊端
- DLL的Export和Import及extern
- 机器学习实战—朴素贝叶斯及要点注解
- linux+yum安装终端php,centos下yum搭建安装linux+apache+mysql+php环境教程
- opus在arm的嵌入式平台上的移植和开发
- c语言不使用加运算符做加法运算
- 【优化预测】基于matlab灰狼算法优化BP神经网络预测【含Matlab源码 1728期】
- 【数学建模】最优化模型
- HTML5开发实战之网易微博
- windows通过vnc远程桌面
- 保研面试/考研复试英语口语常见问题整理
- 【概率论与数理统计】猴博士 笔记 p36-37 协方差、相关系数、不相关、相互独立时的期望和方差
- ecshop index.php,ecshop 源码分析01 (index.php)
- Kotlin开发利器之协程
- LumaQQ启动脚本
- c++的3D游戏笔录-基于panda3d(2)
- python爬虫 - GET和POST分别对爬取的网页状态的影响以及常见网页状态码(200、401、402、404等等)
热门文章
- 人力资源大数据解决方案
- eclipse中运行tomcat提示端口被占的4种解决方案
- css之文本两端对齐的两种解决方法
- Macbook pro 2016/2017 接入扩展坞时断 WIFI 问题的解决办法
- 缓存一致性和跨服务器查询的数据异构解决方案canal
- 关于ubuntu系统无线网络网速慢的解决方法
- ubuntu 下更新pip后发生 ImportError: cannot import name ‘main‘的问题解决
- 如何使用RecyclerView构建Horizo​​ntal ListView?
- vue移动端优秀框架收集
- python基础(1.5-1.7)