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