2017-06-08 73 views

回答

8

9/5整數算術被評估,因此它是等於1

9.0/5 * 3是一種常見的修復。 (將該術語中的一個係數提升爲double將迫使評估以雙精度浮點形式進行。)

1

System.out.print((9.0/5)* 3);

+3

添加更多的解釋會更好。 :) –

1

在java中,當你做整數的除法將返回一個整數不是實數:

9/5回報1代替1.8

解決你的問題有兩種解決方法:

  1. 請使用實際的號碼,因此您必須使用9.0/5
  2. 或者您可以將該號碼加倍((double)9/5) * 3
1

所有數字爲整數,有那麼它會給整數結果可能使9.0或5.0得到這個問題的答案... 下面給出..

System.out.print((9.0/5) * 3); OR 
System.out.print((9/5.0) * 3); 
+0

我會傾向於刪除多餘的括號,因爲(i)我對此很有教條意義,並且(ii)您很容易受到重構爲「(9/5)* 3.0」的人的影響。但有一個upvote都是一樣的。 – Bathsheba