Given:
System.out.println("5 + 2 = " + 3 + 4);
System.out.println("5 + 2 = " + (3 + 4));
What is the result?
A.
5 + 2 = 34
5 + 2 = 34
5 + 2 = 34
B.
5 + 2 + 3 + 4
5 + 2 = 7
5 + 2 = 7
C.
7 = 7
7 + 7
7 + 7
D.
5 + 2 = 34
5 + 2 = 7
5 + 2 = 7
題解
運算子「+」若其中一個運算元為字串,那麼它將會做字串連接,否則為加法運算。
由於優先順序的關係,題目第1行會等同:
System.out.println(("5 + 2 = " + 3) + 4);
因此「3」和「4」會被當作字串進行連接。
若題目是寫成:
System.out.println(5 + 2 + " = 3 + 4");
等同:
System.out.println((5 + 2) + " = 3 + 4");
因此會輸出:
7 = 3 + 4