使用java获取双变量中的百分位值数字

时间:2015-03-20 16:21:34

标签: java

我想把数字放在第二百分之一的双倍值(小数点后的第二位)。

所以,例如,如果double值是48.4569999,我想使用任何Math或BigDecimal方法得到值 5 ,这是十进制之后的第100位。

我尝试过以下代码:

BigDecimal src = new BigDecimal("48.4569999");
BigDecimal a = src.remainder(BigDecimal.ONE);
System.out.println("a : " + a);

导致.456999但我不想使用任何字符串函数来获得第二个数字。请问有什么Math或Bigdecimal函数吗?感谢您的帮助。

2 个答案:

答案 0 :(得分:5)

为什么不乘以100,将所需的值推到正确的位置,转换为int(删除任何< 1)然后执行%10,这将给你余数(这将是你想要的数字)

答案 1 :(得分:1)

您可能正在寻找movePointRight(int)

int a = src.movePointRight(2).remainder(BigDecimal.TEN).intValue();

打印

  

a:5