我有一个BigDecimal数字,在某些情况下我想添加0。当我更改BigDecimal的标度时,它只返回subNumber的BigDecimal数。
例子:
新BigDecimal(0.1721112427968000094313954596298853517869092775632121988466426373478102735617940027951431710952381083564411002004385868111);System.out.println(c.setScale(120));
它返回:
0.172111242796800012477831387514015659689903259277343750000000000000000000000000000000000000000000000000000000000000000000如何返回一个与我的BigDecimal号码最后为0的相同数字?
发布于 2012-05-18 14:49:48
您正在丢失精度,因为您对BigDecimal的参数正被截断为双精度。如果传入相同的参数,但以字符串形式传递(将引号放在其周围),则可以克服这一问题。
https://stackoverflow.com/questions/10654761
复制相似问题