“嗨,阿米戈!”

“嗨,艾莉!”

“我今天心情很好,所以我想告訴你一些有趣的事情。我將從Java的類型系統如何處理原始類型開始。”

"在 Java 中,每個對象和每個變量都有自己預設的不可更改的類型。原始變量的類型在程序編譯時確定,但對象的類型在創建時確定。新創建的對象和/或變量的類型在其生命週期內保持不變。這是一個例子:“

Java代碼 描述
int a = 11;
int b = 5;
int c = a / b; // c == 2
a / b– 表示整數除法。答案是兩個。除法運算的餘數將被忽略。
int a = 13;
int b = 5;
int d = a % b; // d == 3
d將存儲整數除以的餘ab。餘數為 3。

“你需要記住一些有趣的細微差別。”

“首先,引用變量並不總是指向與其具有相同類型的值。”

“其次,當兩個不同類型的變量交互時,必須先將它們轉換為同一類型。”

“那除法呢?如果我們用 1 除以 3,我們會得到 0.333(3)。對嗎?”

“不對,不對。兩個整數相除,結果也是整數。5除以3,結果就是1,餘數為2,餘數忽略不計。”

“如果我們將 1 除以 3,我們將得到 0(帶有提醒 1,將被忽略)。”

“但是如果我想得到 0.333 怎麼辦?”

“在 Java 中,在執行除法之前,最好通過乘以浮點數一 (1.0) 將數字轉換為浮點(小數)類型。”

Java代碼 描述
int a = 1/3;
a將為 0
double d = 1/3;
 d 將是 0.0
double d = 1.0 / 3;
d將為 0.333(3)
double d = 1 / 3.0;
d將為 0.333(3)
int a = 5, b = 7;
double d = (a * 1.0) / b;
d將是 0.7142857142857143

“知道了。”