我有一個包含許多十進制值的列表。在java中取整
- 如果我得到的0.032一個值i必須 圓其關閉,以3.2%
- 如果我得到的值32.33 我必須四捨五入其關閉,以 32%
- 如果我得到32.66的值,我必須圓其關閉,以33%
- 如果十進制數爲5,6,7,8或9 輪到下一個
應該如何我去BT DNG呢?
我有一個包含許多十進制值的列表。在java中取整
應該如何我去BT DNG呢?
Math.round()
並將其轉換爲百分比形式。
我懷疑.032
的情況。休息看起來不錯。
thnx guys.tha math.round幫助。我想說的是例如:結果0.322將顯示32%(如果十進制數字是5,6,7,8或9,則捨去小數點),如果是 例如:將顯示結果0.023 2.3%(以百分比表示一位小數,如果十進制數字是5,6,7,8或9,因爲我是初學者,如果任何人都可以給我邏輯,它將非常有幫助。 – user696266 2011-04-25 12:41:51
只是比較no和決定它。 – 2011-04-25 12:50:47
使用Math.round()
。如果小數部分爲0.5或更大,則正確地將數字向上舍入。
如果我理解你的問題正確:
對於第一點,你可以使用DecimalFormat
類,見API
我不知道爲什麼你會想「圓圓」 32.33 - > 32 %,因爲這不是四捨五入。如果解析可以用這種方式給出的用戶輸入數據,則可以除以100(給出0.3233)並使用DecimalFormat。
對於您可以使用Math.round()
爲勸低於/高於
使用MathUtils(Apache的百科全書數學)其他
MathUtils.round(double, scale, roundingMethod);
規模 - 數字小數點右邊的數字。 (+/-)
roundingMethod:BigDecimal
.ROUND_DOWN,#.ROUND_CEILING,#.ROUND_HALF_UP,...
你確定的第一條規則是正確的?它似乎不符合其他人。 – ZeissS 2011-04-21 09:18:12