-4
A
回答
3
+
作品既作爲算術以及連接運算符。所有的表達式都是從左到右執行的。因此,在2 + 3 + "bc"
的情況下,它首先添加2和3作爲算術運算符,然後當它在一側找到字符串並且在那時找到其他字符時,它將作爲連接運算符。
0
當使用+
將任何東西添加到字符串時,Java將它視爲將該東西連接到字符串。
讓我們來看看每種情況。
"bc" + 2 + 3
+
是左結合,這意味着2個最左邊的操作數被第一評價。在這種情況下,它是"bc" + 2
。這評估爲"bc2"
。然後我們評估"bc2" + 3
,產生"bc23"
。
2 + 3 + "bc"
兩個最左邊的操作數被第一評價:2 + 3
計算結果爲5。這是因爲存在在表達無字符串。 +
執行數學加法。然後我們評估5 + "bc"
,產生"5bc"
。
0
Java正在從左向右讀取您的操作。如果第一個變量是一個字符串,其餘的值將連接到它。在第二種情況下,您必須先編號,然後將其與總結,然後將該值與以下字符串連接起來。這將得出結果:第一種情況:「bc23」和第二種情況「23bc」。
0
在你的情況下,如果你將字符串值放在第一個Java中,將把所有的值作爲字符串處理,除非前兩個值是可計算的。
這裏是幫助你理解基本概念的示例代碼。
public static void main(String[] args) {
// TODO code application logic here
System.out.println("bc"+2+3); //bc23
System.out.println("bc"+(2+3)); //bc5
System.out.println(2+3+"bc"); //5bc
System.out.println(2+3+"bc"+2+3); //5bc23
System.out.println("bc"+2+3==2+3+"bc");// false
}
相關問題
- 1. 這兩個實現爲什麼會產生不同的結果?
- 2. 爲什麼這兩個程序會導致不同的結果?
- 3. 爲什麼兩個陳述會導致不同的結果?
- 4. 爲什麼這兩個陳述有不同的結果?
- 5. 爲什麼這兩個比較有不同的結果?
- 6. 爲什麼這兩個javascript調用addEventListener有不同的結果
- 7. 爲什麼這段代碼有兩個不同的結果?
- 8. 爲什麼這兩個查詢有不同的結果?
- 9. 爲什麼會有不同的語法相同的結果?
- 10. 這兩個查詢有什麼區別?爲什麼不同的結果
- 11. 這個方法爲什麼會給出兩個不同的結果?
- 12. java中的Euler Project 5,爲什麼會有不同的結果?
- 13. 這兩個簡單的代碼爲什麼會給出不同的結果?
- 14. 爲什麼組合uint8_t的兩個班次會產生不同的結果?
- 15. 爲什麼斯坦福CoreNLP的兩個演示會給出不同的結果?
- 16. 爲什麼這兩個char數組返回不同的結果?
- 17. 爲什麼這兩個python函數返回不同的結果?
- 18. 爲什麼以下兩個代碼提供不同的結果?
- 19. 爲什麼這兩個sql的結果不同
- 20. 爲什麼兩個查詢的結果不同?
- 21. 爲什麼這兩個Cypher查詢返回不同的結果?
- 22. 爲什麼這個相似的兩個代碼有不同的結果?
- 23. 爲什麼在兩個scala運行環境中會出現不同的結果?
- 24. 爲什麼這兩個powershell命令不會返回相同的結果?
- 25. 這兩個StreamWriter構造函數爲什麼會給我不同的結果?
- 26. 爲什麼這兩個append方法會產生不同的結果?
- 27. 爲什麼這兩個高(64bx64b)函數會給出不同的結果?
- 28. 爲什麼這兩個數學函數不會返回相同的結果?
- 29. 爲什麼最終結果會有所不同?
- 30. sjp.likert命令中的sjplot,factor或numeric ?,爲什麼有兩個不同的結果?
由於評估的順序 – UnholySheep
請提供[MCVE],例如工作代碼示例和示例輸出。 – juzraai
請編輯您的問題並複製/粘貼代碼和輸出,而不是截圖。索引將變得更容易。 –