在 Java 中,嘗試簡單的除法運算時會出現常見的錯誤。像這樣基於整數的計算意外失敗的情況可以歸因於整數除法的性質。
整數相除時,結果是整數,截斷任何小數部分。在以下 Java 程式碼中可以觀察到此限制:
float res = quantity / standard;
儘管變數 res 被宣告為浮點數,但兩個整數相除會得到整數結果。這種差異可能會導致意外的精度錯誤。
要修正此問題,請考慮在除法之前將分子明確轉換為浮點數:
float res = (float) quantity / standard;
強制將分子視為float,分母也提升為float。這可確保執行基於浮點的除法,並將結果的小數部分保留在 res 中。
或者,如果您正在處理文字,則可以將“f”後綴添加到分母:
float f = 6800f / 500;
此修改實現了與顯式轉換相同的目的,將分母轉換為浮點數以確保基於浮點的除法運算的執行。
以上是為什麼 Java 中的整數除法會截斷分數?的詳細內容。更多資訊請關注PHP中文網其他相關文章!