基本類型完整對照表
| 類型 | 中文名 | 位元 | 位元組 | 取值範圍 | 預設值 |
| byte | 位元組 | 8 | 1 | -128 ~ 127 (-2⁷ ~ 2⁷-1) | 0 |
| short | 短整數 | 16 | 2 | -32,768 ~ 32,767 (-2¹⁵ ~ 2¹⁵-1) | 0 |
| int | 整數 | 32 | 4 | -2,147,483,648 ~ 2,147,483,647 (-2³¹ ~ 2³¹-1) | 0 |
| long | 長整數 | 64 | 8 | -2⁶³ ~ 2⁶³-1 | 0L |
| float | 單精度浮點數 | 32 | 4 | ±1.4E-45 ~ ±3.4E+38 (6-7 位有效數字) | 0.0f |
| double | 雙精度浮點數 | 64 | 8 | ±4.9E-324 ~ ±1.8E+308 (15-16 位有效數字) | 0.0 |
| char | 字元 | 16 | 2 | \u0000 ~ \uFFFF (0 ~ 65,535) | '\u0000' |
| boolean | 布林 | ~1 | 1 | true / false | false |
容量擴展方向(隱式轉換)
byte, short, char → int → long → float → double
↑
(byte/short/char 互無隱式轉換)
字面值標示後綴
| 類型 | 後綴 | 範例 |
| long | L / l | 100L |
| float | F / f | 3.14F |
| double | D / d (可省略) | 3.14 / 3.14D |
| char | 單引號 | 'A' / '\u0041' |
| boolean | 關鍵字 | true / false |
關鍵注意事項
- float/double 非精確:財務計算請用
BigDecimal
- char 無負值:無號 16 位元整數,可參與算術運算
- boolean 無大小規範:JVM 實作相關,邏輯上佔 1 bit,陣列中可能壓縮
- 預設值只適用於欄位:區域變數必須顯式初始化
包裝類別對應
Byte, Short, Integer, Long, Float, Double, Character, Boolean
// 自動裝箱/拆箱 (Java 5+)
Integer i = 100; // 裝箱
int n = i; // 拆箱
// 快取範圍:-128 ~ 127 (IntegerCache)