我對此很陌生,因爲您可能知道,請向初學者澄清以下代碼是如何縮小輸出-2.50作爲答案的。在整數 - >雙倍的情況下,我仍然對促銷/降級主題感到困惑。Java原始類型推廣混淆
int x = 5;
double y = 2.5;
double q = x/10 - y;
System.out.printf("%.2f\n",q);
我看到它的方式是:雙Q = 5.0(X升爲從int一倍)/ 10.0 - 2.5 這將是等於0.5 - 因爲「%2.5 = -2.00(2位小數.2f \ n「)
爲什麼正確答案-2.50而不是-2.00?
提示..分區比減法具有更高的優先級。分部首先發生(並且其值爲0),然後從0中減去「2.5」。 – TheLostMind
@TheLostMind我明白分部在減法之前出現,但爲什麼分區的值爲0 –
這在JLS中提到過。你首先將整數除以整數,然後在必要時進行轉換 – TheLostMind