冷知识: || 运算符到底有没有短路效果
【摘要】
又是个小知识点
&&叫短路与:有false为false|| 叫短路或:有true为true
顾名思义,这两个符号在特定情况下要短路
开始验证
先验证 &&
码来~...
又是个小知识点
- &&叫短路与:有false为false
- || 叫短路或:有true为true
顾名思义,这两个符号在特定情况下要短路
开始验证
先验证 &&
码来~
结果很好理解,第一个条件为false,所以后面的条件就被短路不执行了
但是当我在测试短路或 || 的时候,发现不对劲,这玩意儿难道没有短路效果?
结果居然是1
这说明后面的 i++ 执行了,说好的短路呢?
找了很多文档来看,发现网上都没这方面的资料
于是去群里和兄弟们讨论,分分钟破案
将第一个条件改为true后再次验证
靠谱,靠大谱
所以真相是短路体现的情况不同
总结来了:
- 对于&&:短路体现在第一个条件为false时,因为只要有false结果就为false,后面的条件不需要再执行;
- 对于 || :短路体现在第一个条件为true时,因为只要有true结果就为true,后面的条件不需要再执行;
ok我话说完
文章来源: huangjie.blog.csdn.net,作者:负债程序猿,版权归原作者所有,如需转载,请联系作者。
原文链接:huangjie.blog.csdn.net/article/details/122668648
【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)