關鍵字:被 Java 賦予特殊含義的單詞,全部小寫。注意 goto、const 為保留字。
標識符:類、方法、變量命名規則:
| 類型 | 語法 | 用途 |
|---|---|---|
| 單行註釋 | // 文字 | 簡短說明 |
| 多行註釋 | /* 文字 */ | 代碼塊說明 |
| 文檔註釋 | /** 文字 */ | 生成 API 文檔,支持 javadoc 標籤 |
"Hello"(雙引號)12、-53.14'A'、'中'(單引號,單字符)true/falsenullint binary = 0b1010; // 二進制
int octal = 012; // 八進制
int decimal = 10; // 十進制
int hex = 0xA; // 十六進制
計算機以補碼存儲和運算有符號數:
例:byte b = (byte)130 → 二進制 10000010(補碼) → 原碼 11111110 → 十進制 -126
| 類型 | 位數 | 默認值 | 範圍 |
|---|---|---|---|
| byte | 8 | 0 | -128 ~ 127 |
| short | 16 | 0 | -32,768 ~ 32,767 |
| int | 32 | 0 | -2^31 ~ 2^31-1 |
| long | 64 | 0L | -2^63 ~ 2^63-1 |
| float | 32 | 0.0F | IEEE 754 單精度 |
| double | 64 | 0.0 | IEEE 754 雙精度 |
| char | 16 | '\u0000' | Unicode 字符 |
| boolean | 1 | false | true/false |
int,長整數需後綴 Ldouble,單精度需後綴 Fbyte/short/char 運算時自動提升為 intboolean 不參與任何類型轉換byte → short/char → int → long → float → double
// byte/short/char 相互運算直接提升為 int
byte b = (byte)(a + c); // 可能損失精度或溢出
// 截取低位:int 130 → byte -126
byte b = (byte)130; // 輸出 -126
// 130 = 00000000 00000000 00000000 10000010
// 截取低 8 位 = 10000010 (補碼) → 原碼 11111110 = -126
System.out.println('a' + 1); // 98 (字符 'a'=97 + 1)
System.out.println("hello" + 'a' + 1); // helloa1 (左到右連接)
System.out.println('a' + 1 + "hello"); // 98hello (先算 'a'+1=98 再連接)
float 佔 4 字節:1 位符號位 + 8 位指數位 + 23 位尾數位(隱含最高位 1)
17.625 存儲過程:
1. 二進制:10001.101
2. 科學計數法:1.0001101 × 2^4
3. 符號位:0 (正數)
4. 指數位:4 + 127 = 131 → 10000011
5. 尾數位:0001101 後補 0 至 23 位
6. 最終:01000001 10001101 00000000 00000000

掌握基本數據類型的存儲機制、轉換規則與邊界情況,是寫出高性能、無 Bug Java 代碼的基石。建議多練習手寫二進制轉換與溢出分析。