Java中如何获取小数点后的部分?

新手上路,请多包涵

我有一个 double 变量 d = 1.15

我想要小数点后的数字,即“15”。

在 Java 中实现此目的的最佳方法是什么?

我试过这样的:

 Double d = 1.15;
String str = d.toString();
int len = str.substring(str.indexOf(".")).length() - 1;
int i= (int) (d * (long)Math.pow(10,len) % (long)Math.pow(10,len));

但是我没有得到正确的答案,因为当我转换 d.toString() 答案是 14.999999999999986

原文由 user1023675 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 591
1 个回答

尝试这个:

 String numberD = String.valueOf(d);
numberD = numberD.substring(numberD.indexOf("."));

现在这个 numberD 变量的值为 15

原文由 Lucifer 发布,翻译遵循 CC BY-SA 4.0 许可协议

推荐问题