在java中格式化float变量最多2位数

时间:2014-05-29 08:16:18

标签: java

我正在尝试将float变量显示为两位数的精度。假设变量是50.35,那么它就会显示出来。但是当变量为50.30时,它只显示50.3。无法显示50.30。

3 个答案:

答案 0 :(得分:6)

尝试:

 System.out.printf("%.2f\n", 50.30);

使用格式字符串告诉printf以浮点格式打印数字,其中2为打印的小数位数。

Here您可以在printf以及其他格式方法中找到包含受支持的转换器和格式标记的表格。

答案 1 :(得分:2)

您可以使用DecimalFormat。

DecimalFormat dformat = new DecimalFormat();
dformat.setMaximumFractionDigits(2);
System.out.println(dformat.format(decimalNumber));

答案 2 :(得分:1)

您的意思是要格式化浮点值。您可以使用

执行此操作
 String text = String.format("%.2f", v);

 System.out.printf("%.2f\n", 50.3); // prints 50.30

或使用DecimalFormat。

BTW请确保您使用的是double,因为它的精确度高于float