4
A
回答
7
javac
编译器做了很少的优化。
JIT可以优化代码,但在这种情况下,您可以确定&&
和||
总是从左到右进行评估。
除了赋值运算符所有的二元运算符从左评估向右
http://docs.oracle.com/javase/tutorial/java/nutsandbolts/operators.html
从JLS。
15.7。评估顺序
Java编程语言保证操作符的操作数看起来是按照特定的评估顺序(即从左到右)进行评估的。
建议代码不要严格依赖于此规范。当每个表达式至多包含一个副作用时,代码通常会更清晰,作为其最外层操作,并且代码并不完全依赖于由表达式的从左到右的评估导致出现哪种异常。
http://docs.oracle.com/javase/specs/jls/se7/html/jls-15.html
相关问题
- 1. 是~~一个短路操作员?
- 2. 分配操作是否总是从右向左复制数据?
- 3. Objective-C AND操作数是否短路?
- 4. 短路操作是否过载?
- 5. ``````操作符是否使用短路?
- 6. CSS转换是从左到右,而不是从右到左
- 7. 对收到的短信执行操作
- 8. CSS过渡从左到右工作,右到左不工作
- 9. 堆叠酒吧从右到左而不是从左到右
- 10. 制作fillRect从右到左
- 11. F#List.Map是否保证从左项到右项的执行顺序?
- 12. 执行部门操作员
- 13. 从右到左
- 14. iOS是否让开发人员执行此操作?
- 15. 大熊猫:从左到右和从右到左交替排列()从左到右
- 16. TTrackbar从右至左,而不是从左到右
- 17. JSoup选择器是从右到左还是从左到右选择?
- 18. JButton是否执行了操作?
- 19. FilterOutpuStream是否正常执行写操作?
- 20. 如果左操作数到?运算符不为null,右操作数是否得到评估?
- 21. 从右到左UILabels
- 22. 从右到左UINavigationController
- 23. 从右到左jframe
- 24. Android:preferencescreen从右到左
- 25. ContextMenu从右到左
- 26. 从右到左ProgressBar?
- 27. 如何设置我的操作栏以支持从右到左
- 28. 在Java中保证操作的从左到右顺序?
- 29. 是否有从MDB(Material Design Bootstrap)的从右到左的插件
- 30. 在条件之外使用短路操作符是否合法?
你能参考的东西在Java规范或为什么我可以肯定的是任何Java编译器不来的想法“哎,正确的操作数被称为是假的编译时间,短电路运营商被使用 - 所以我会抛弃它“ – AvrDragon
Oracle Java教程是不够的? ;)阅读JLS通常要困难得多。 –
其实还不够,因为短路是一些特殊情况,可能会有特殊的行为。但现在已经足够了。谢谢:3 – AvrDragon