首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> Java 程式設計 >> Java 相關知識

Java 數據類型轉換完全指南:自動與強制轉型實戰

     編輯:Java 相關知識

轉換分類

  • 自動類型提升:容量小 → 容量大 (如 short → int → long → float → double),無需代碼干預。
  • 強制類型轉換:容量大 → 容量小,需顯式造型 (targetType) value,可能損失精度或溢出。

基本類型互轉範例

short s = 0; int i = s;           // 1. short → int (自動)
s = (short) i;                    // 2. int → short (強制,高位截斷風險)

基本類型 ↔ String 互轉

方向方法範例
基本類型 → StringString.valueOf()String.valueOf(9.99f) → "9.99"
String → 基本類型包裝類 parseXxx()Integer.parseInt("10") → 10
// 基本類型 → String
String str = String.valueOf(99999999.99); // double
str = String.valueOf('9');                // char

// String → 基本類型 (拋 NumberFormatException 需捕獲)
int i = Integer.parseInt("10");
float f = Float.parseFloat("10.1");
long l = Long.parseLong("99999999");
double d = Double.parseDouble("99999999.9");
byte b = Byte.parseByte("0");
short sh = Short.parseShort("0");
char c = "abc".charAt(0);        // 取首字符
boolean flag = Boolean.parseBoolean("true"); // 僅 "true"(忽略大小寫) 為 true

關鍵注意點

  1. 精度損失:double → float → long → int → short/byte 可能截斷。
  2. 異常處理:parseXxx 輸入非法拋 NumberFormatException,必須 try-catch。
  3. Boolean.getBoolean(String) 已棄用/語義特殊 (讀系統屬性),解析字符串請用 Boolean.parseBoolean() 或 Boolean.valueOf()。
  4. char 與 String 互轉:String.valueOf(char) / str.charAt(index)。

最佳實踐建議

  • 優先使用 String.valueOf() 統一轉字符串,避免 "" + value 隱式創建 StringBuilder。
  • 解析數值前先 trim() 去除空白。
  • 大數值場景考慮 BigDecimal 避免浮點誤差。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved