我有一个 BigDecimal 变量
BigDecimal x = new BigDecimal("5521.0000000001");
公式:
x = x.add(new BigDecimal("-1")
.multiply(x.divideToIntegralValue(new BigDecimal("1.0"))));
我想删除整数部分,以获得值 x = ("0.0000000001")
,但我的新值是 1E-10 而不是 0.0000000001。
最佳答案
要获得 BigDecimal
的 String
表示而不带指数部分,您可以使用
BigDecimal.toPlainString()
.在你的例子中:
BigDecimal x = new BigDecimal("5521.0000000001");
x = x.add(new BigDecimal("-1").
multiply(x.divideToIntegralValue(new BigDecimal("1.0"))));
System.out.println(x.toPlainString());
打印
0.0000000001
关于没有 E 的 Java BigDecimal,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12026610/