2017-10-18 139 views
0

根據小數圓度爲數字BigDecimal與智能精度(尺度)

BigDecimal num = new BigDecimal(25) 

BigDecimal result = num.divide(new BigDecimal(13), 7, RoundingMode.HALF_EVEN) 
// 1.9230769 

BigDecimal result = num.divide(new BigDecimal(10), 7, RoundingMode.HALF_EVEN) 
// 2.5000000 that should be 2.5 

大概分析其餘如何設置通用比例?

API中是否有這種情況?

+2

'BigDecimal.stripTrailingZeros()'也許?例如'BigDecimal result = num.divide(new BigDecimal(13),7,RoundingMode.HALF_EVEN).stripTrailingZeros();'See: [BigDecimal.stripTrailingZeros()](https://docs.oracle.com/javase/7 /docs/api/java/math/BigDecimal.html#stripTrailingZeros())和[從Java中的BigDecimal刪除尾隨零](https://stackoverflow.com/questions/17770886/removing-trailing-zeros-from-bigdecimal- in-java) –

+0

@djbrown它的工作原理10x你可能會回答這個問題我會接受你的回答 –

+1

謝謝,但這個問題已經在我發現的另一個問題中得到解答,所以在重新回答時沒有價值,請參閱鏈接以上。這應該關閉重複或刪除。 –

回答