Re: [問題]同時使用了String和數字運算的println()

看板java作者 (痞子軍團團長)時間11年前 (2014/01/21 13:34), 編輯推噓0(002)
留言2則, 2人參與, 最新討論串2/2 (看更多)
※ 引述《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

01/21 13:38, , 1F
閒閒沒事的版主先搶走P幣了-3-
01/21 13:38, 1F

02/17 18:42, , 2F
已習慣:"" + 1 + 2 + "文字"
02/17 18:42, 2F
文章代碼(AID): #1ItWRycS (java)
文章代碼(AID): #1ItWRycS (java)