说明:此文解释上期https://blog.csdn.net/weixin_61767383/article/details/142425642?spm=1001.2014.3001.5502案例运行结果
运行结果:
Q1.为什么a的值是22,bo1的值是true?
A:最初a赋值是20,++a,变为21,然后执行&&前面的语句,此时是true接着a还是21,执行&&后的语句,此时结果也是true,执行完语句之后,a自加1,最终结果是22,当短路与前后的语句都是true时,最终bo1的结果就是true。
Q2.为什么b的值是21,bo2的值是false?
A:b刚开始被赋值为20,接着执行短路与前面的语句,20对3取余,结果不等于0,所以前半句是false,然后执行完前面的语句后,b就是21,然后就不会执行短路与后面的语句,即b的最终结果就是21,bo2结果为false。
总结
本案例用到的之前提到的知识点:
1. 短路与逻辑运算符---Java-CSDN博客
2. 算术运算符++a和a++的区别
刚开始写这个程序时一脸懵逼,搞不清为啥b是21,经过反复的练习和思考终于搞懂了!
大家也要积极交流哦,有什么问题我们一起讨论,共同进步
标签:语句,20,21,结果,短路,案例,解析,true,运行 From: https://blog.csdn.net/weixin_61767383/article/details/142444289