BigDecimal divide除法除不尽报错 用BigDecimal做除法的时候,直接拿起两数怼上除法有时候会出现除不尽就会报错 列如: 1 2 3 BigDecimal a = new BigDecimal(10); BigDecimal re = a.divide(new BigDecimal(3)); S
BigDecimal divide除法除不尽报错用BigDecimal做除法的时候,直接拿起两数怼上除法有时候会出现除不尽就会报错 列如:
或:
直接这样除是会出现除不尽报错的 解决办法除的时候直接截取位数就好了
关于BigDecimal除法问题BigDecimal做除法时尽量使用divide(BigDecimal divisor, int scale, int roundingMode),这个方法 divisor:被除数 scale保留小数位数 roundingMode保留小数时采用的方法,一般使用BigDecimal.ROUND_UP(四舍五入) 如果不指定保留小数位数,在遇到除不尽的情况下就会报错 BigDecimal源码
|
2021-06-05
2021-05-27
2021-05-26
2021-06-05
2021-05-16