Java格式化Float到String精度为两个数字

时间:2014-09-14 15:44:37

标签: java precision

我想将Float转换为String,但是我遇到了精度问题

我希望以String格式看到类似5.50的内容。

如果我使用

String price = new DecimalFormat("#.##").format(ClientOrder.TOTAL_PRICE);
totalPriceTV.setText("" + price + " " + OptionsApp.CURRENCY);

我会让价格看起来像一个整数,或者像5.5

ClientOrder.TOTAL_PRICE是一个浮点数

那么如何在点后获得2个数字的字符串?

3 个答案:

答案 0 :(得分:0)

你也可以写这样的东西:

 String price =  String.format("%.2f", ClientOrder.TOTAL_PRICE);

答案 1 :(得分:0)

正确的模式是"#.00"

String price = new DecimalFormat("#.00").format(ClientOrder.TOTAL_PRICE);
totalPriceTV.setText("" + price + " " + OptionsApp.CURRENCY);

答案 2 :(得分:-1)

您可以将String.substring(int, int)String.indexOf(String)一起使用。

String totalPrice = "5.50158941";
String price = totalPrice.substring(0, totalPrice.indexOf(".") + 3);