如何使用变量精度在Java中进行字符串格式化?

12 浏览
0 Comments

如何使用变量精度在Java中进行字符串格式化?

我想允许用户根据需要调整从double生成的String的精度。目前,我尝试了以下代码:

String foo = String.format("%.*f\n", precision, my_double);

然而,我收到了java.util.UnknownFormatConversionException异常。我借鉴这种方法的灵感来自于C printf和这个资源(1.3.1节)。

我是否有简单的语法错误,Java是否支持这种情况,或者是否有更好的方法?

编辑:

我想我可以这样做:

String foo = String.format("%." + precision + "f\n", my_double);

但我仍然对这种操作是否有原生支持感兴趣。

0