1

String.format()有没有办法只使用小数来格式化双精度?

System.out.println(String.format("%.2f", 1.23456d));

正如预期的那样,上面的行返回“1.23”,但在这种情况下,我只对“.23”感兴趣。此外,我对小数点前的任何内容都不感兴趣,也没有前导 0。

这是可能的String.format()还是我需要使用DecimalFormat

干杯

4

1 回答 1

1

您可以对String.format的输出进行后处理:

String.format("%.2f", 1.23456d).replaceFirst("^[^.//]+", "")
于 2013-08-28T16:16:39.503 回答