0
我需要歸檔這樣的:(基本上NUM1 * NUM2 = NUM3和NUM1和NUM2給出)的Java的DecimalFormat的RoundingMode
1) 10.62 * 4.0 = 42.48
2) 14.89 * 8.5 = 126.56
3) 13.21 * 6.0 = 79.26
4) 16.55 * 7.35 = 121.64
5) 18.62 * 9.0 = 167.58
6) 9.47 * 15.3 = 144.89
7) 6.58 * 3.0 = 19.74
8) 18.32 * 5.4 = 98.93
9) 12.15 * 2.9 = 35.24
10) 3.98 * 4.8 = 19.10
這個練習是練習格式化/舍入串/數。
所以我用:
DecimalFormat decimalFormat = new DecimalFormat(".00");
System.out.println(decimalFormat.format(num3));
,並得到了一切正確的,但在9) 12.15 * 2.9 = 35.24
,我得到了35.23
而不是35.24
默認的DecimalFormat的是的RoundingMode HALF_EVEN,如果我用RoundingMode.UP我會得到這個權利35.24但其他結果會被搞砸,所以我卡住了...
我應該使用什麼來獲得預期的結果?
您是否試過'RoundingMode.CEILING'或'RoundingMode.HALF_UP'? (http://docs.oracle.com/javase/7/docs/api/java/math/RoundingMode.html) – Tom 2014-10-11 09:43:44
HALF_UP無效,CEILING會搞亂其他結果。 – 2014-10-12 04:06:09