Java - 如何在显示之前和之后格式化浮点数?

时间:2016-01-29 00:06:18

标签: java floating-point format

我最近看到有人发布了这个问题,但是因为他们收到了不好的投票/评论,所以当我打算回答时,他们就把它拿下来了。由于它在stackoverflow上并不流行,并且由于人们说服用户无法完成,我选择在其上发布Q& A.

问题:如何将浮点数格式化为四位小数? (即1.4056)

例如,如果float为1.8,则应显示为1.8000。 如果浮点数为1.56789,则应显示为1.5679。

1 个答案:

答案 0 :(得分:0)

答案:使用String.format实际格式化浮动本身,System.out.printf() 显示格式化浮点数,而不修改值。

的String.format:

float test = 0;
test=Float.parseFloat(String.format("%1.4f", (float)1.123456));

这会将值1.1235存储在'test'中(注意它会向上舍入)。如果我们输入浮点值1.5,测试将是1.5而不是1.5000,因为它不会存储不必要的零。

要将1.5显示为1.5000,请使用以下语句:

System.out.printf("%1.4f", (float)/*or double*/1.5);

这将显示带有四位小数的值,无论其值如何。在上面的语句中,将显示1.5000。再次,如果需要,它会四舍五入。

(请注意,在格式化中,%f适用于浮点数和双精度数。您可以用双打替换上面的浮点数,结果将是相同的)

希望这可以帮助任何需要它的人!