BigDecimal除法問題

2021-08-16 15:37:22 字數 370 閱讀 9354

bigdecimal做除法時,盡量使用divide(bigdecimal divisor,

intscale,

introundingmode),這個方法

divisor:被除數    scale保留小數字數   roundingmode保留小數時採用的方法,一般使用bigdecimal.

round_up(四捨五入)

如果不指定保留小數字數,在遇到除不盡的情況下就會報錯

bigdecimal原始碼:

trycatch(arithmeticexception e)

BigDecimal除法報錯問題

url 我的想法是,bigdecimal是不限精度的,所以當做除法的時候,計算機不知道結果的精度是需要多少,所以不指定的話會報錯 mathcontext mc new mathcontext 2,roundingmode.half down 精度為2,捨入模式為大於0.5進1,否則捨棄。bigdec...

BigDecimal除法運算報錯

今天在運用bigdecimal做除法運算的時候,錯誤如下 non terminating decimal expansion no exact representable decimal result 不是很明白為什麼會這個樣子,度娘告訴我是因為 bigdecimal 做除法運算,如果除的結果為無限...

BigDecimal做除法操作

bigdecimal做除法操作 bigdecimal b1 newbigdecimal 1000 bigdecimal b2 newbigdecimal 100 system.out.println b1.divide b2,2,bigdecimal.round half up tostring 輸...