Java printf使用可变字段大小吗?

12 浏览
0 Comments

Java printf使用可变字段大小吗?

我只是想将一些C代码转换为Java,但在使用String.printf时遇到了一些麻烦。

在C中,要根据一个变量获取特定的宽度,我可以使用:

printf("Current index = %*d\n", sz, index);

它会根据sz的值格式化整数为特定的大小。

尝试:

System.out.println(String.format("Current index = %*d\n", sz, index));

会报错,因为它不支持*。

我目前使用了以下的折中方法:

System.out.println(String.format("Current index = %" + sz + "d\n", index));

但我希望有一种稍微更好的方法,是吗?

0