在 String.format() 中选择参数
在 C#
中,您可以使用 para 2: {2}
指定用于格式化字符串的参数.这允许在任意位置多次使用参数.
In C#
you can specify which parameter is used for a formatted string with para 2: {2}
. This allows for using parameters in arbitrary places and multiple times.
有没有办法用标准 java 做到这一点?
Is there a way to do this with standard java?
推荐答案
是的.您可以定义参数的索引,请参阅 Argument Index 部分.html" rel="noreferrer">API.
Yes. You can define the argument's index, see the Argument Index section of the API.
例如:
// ┌ argument 3 (1-indexed)
// | ┌ type of String
// | | ┌ argument 2
// | | | ┌ type of decimal integer
// | | | | ┌ argument 1
// | | | | | ┌ type of decimal number (float)
// | | | | | |
System.out.printf("%3$s %2$d %1$f", 1.5f, 42, "foo");
输出
foo 42 1.500000
注意
以下成语都有相同的格式定义:
The following idioms all share the same format definitions:
String#format
PrintStream#printf
Formatter#format
相关文章