在Java中将double值舍入为10位数?

时间:2016-05-12 21:31:58

标签: java double

我一直在寻找一种简单的方法来将双倍数值舍入到10位数,但我甚至找不到一种对我来说好看的方式,一切都太复杂了。 我希望有人可以帮助我,例如:价值0.83426945721236485将成为0.8342694572

提前谢谢。

2 个答案:

答案 0 :(得分:2)

简单。

DecimalFormat df = new DecimalFormat("0.0000000000");
System.out.println(df.format(0.83426945721236485));

看看文档: https://docs.oracle.com/javase/8/docs/api/java/text/DecimalFormat.html

答案 1 :(得分:0)

对于double,小数位在内部没有意义,因为它是二进制浮点。

当然,您可以选择以DecimalFormat支持的任何格式显示它,如prior answer中所述。

如果您想要十位小数位的内部表示,则应使用比例因子为10的BigDecimal