首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 更多程式語言 >> 程式設計疑難解答

Java 基礎語法:i + \"\" 將 int 轉字串的原理

     編輯:程式設計疑難解答

代碼:`System.out.println(i + \"\");`

原理:字串連接運算子觸發隱式 `toString()`

  1. Java 中 `+` 運算子對於 `String` 具有 **左至右結合性**。
  2. 當一邊是 `String` (此處 `\"\"` 空字串),另一邊是基本型別 (`int`),編譯器將基本型別 **自動轉換為字串**,等價於 `String.valueOf(i)` 或 `Integer.toString(i)`。
  3. 結果為新字串,內容為數字的十進位文字表示 (如 `42`)。
  4. `System.out.println` 印出該字串。

等價寫法


System.out.println(i + "");           // 最簡短
System.out.println(String.valueOf(i)); // 標準庫
System.out.println(Integer.toString(i)); // 明確型別
System.out.println("" + i);           // 同理
System.out.printf("%d", i);           // 格式化

效能提示

  • 單次轉換差異微乎其微。
  • 大量迴圈拼接字串請用 `StringBuilder`:
    `StringBuilder sb = new StringBuilder(); for(int i: arr) sb.append(i).append(' ');`

常見誤區

  • 以為 `i + \"\"` 是「加法」→ 實為字串連接。
  • 寫 `System.out.println(i + \" \" + j);` 以為會先算 `i+j` → 實為 `((i + \" \") + j)` 字串拼接,結果如 `\"1 2\"` 而非 `3`。

記住:**只要 `+` 一邊是 `String`,整個運算鏈即為字串連接,基本型別自動 `toString()`**,這是 Java 語言規定的隱式轉換規則。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved