我有这个程序:
int r = 4;//number add to d
int n = 3;//number of 0 add after 25
BigDecimal d = BigDecimal.valueOf(0.0025);
最后我想生成数字:0.0025004
,这个数字由以下公式生成:
在n
之后添加d
位置,然后我的号码为:0.0025000
,最后添加0.000004
到我的号码4是r
。
我知道有几种方法可以做,但我想avoid loop
并使用BigDecimal
答案 0 :(得分:1)
试一试:
int r = 4;// number add to d
int n = 3;// number of 0 add after 25
BigDecimal d = BigDecimal.valueOf(0.0025);
double f = r / Math.pow(10, d.scale() + n);
System.out.println(d.add(BigDecimal.valueOf(f)));
我希望这很有用