作者PsMonkey (痞子軍團團長)
看板java
標題Re: [問題]同時使用了String和數字運算的println()
時間Tue Jan 21 13:34:49 2014
※ 引述《skipeco (skipeco)》之銘言:
: 以下兩句的執行結果
: System.out.println(1 + 2 + "文字");
: System.out.println("文字" + 1 + 2);
: 分別是:
: 3文字
: 文字12
: 在Java API有單純的 println(int x) 或 println(String x),
這句完全岔題了
你說那「3文字」看起來像 int 嗎? Orz
用這個程式碼可能比較好:
String a1 = 1 + 2 + "文字";
String a2 = "文字" + 1 + 2;
System.out.println(a1);
System.out.println(a2);
: 但類似這種混合使用的情形應是屬於何種? 能否請教有此差別的原理?
就是 + 這個 operator 自動幫你作的轉型處理
簡單地說,一旦變成字串之後,之後就都會用字串的 + 法處理
剩下的就是由左到右的處理順序
「1 + 2」會得到 3,這應該沒有問題
「3 + "文字"」會得到 "3文字",這應該也沒有問題
「"文字" + 1」會得到 "文字1",這應該也沒有問題
於是就混完一篇 P 幣了 [逃]
--
錢鍾書:
說出來的話
http://www.psmonkey.org
比不上不說出來的話
Java 版 cookcomic 版
只影射著說不出來的話
and more......
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 220.129.131.129
→ danny8376:閒閒沒事的版主先搶走P幣了-3- 01/21 13:38
→ rukawa0328:已習慣:"" + 1 + 2 + "文字" 02/17 18:42