我想格式化从Double
获得的Object
,因此它只显示小数点后的三位数。这是当前的代码:
Three a = Data.get(index);
// Get the y-axis acceleration value
double b = a.getY();
String accelerationOutUnfiltered = Double.toString(b);
Data[0] = accelerationOutUnfiltered;
注意:我在Android中执行此操作,当我使用String.format("%.3f", y)
时,这不起作用,它会在Android Studio中引发错误。目前上面的代码有效,但它在小数点后显示15位数。
我尝试了几种形式,但都失败了。请帮忙。谢谢:)
答案 0 :(得分:1)
您可以使用DecimalFormatter
。
例如:
double b = a.getY();
DecimalFormat formatter = new DecimalFormat("#.###");
formatter.setRoundingMode(RoundingMode.CEILING);
String formattedDouble = formatter.format(b);
答案 1 :(得分:0)
试过十进制格式化程序吗?
你做这样的事情:
DecimalFormat df = new DecimalFormat("#.#####");
df.format(<your_number>);