在 java 中是否有 java.lang.String.format() 的替代方法来使用通用占位符
Is there an alternate to java.lang.String.format() in java to use generic placeholder
slf4j Logger 有一个干净的格式化程序语法。 (花括号的使用)
org.slf4j.Logger.error("Invalid value1={} for value2={}", value1, value1)
下面的方法有类似的替代方法吗?我想要一个通用的 ({}) 而不是特定于类型的占位符。
String.format("Invalid value1=%d for value2=%d", value1, value1)
如果您愿意,可以使用 MessageFormat,但您需要指定参数编号:
MessageFormat.format("Invalid value1={0} for value2={1}", value1, value2);
您可以将 String.format
与 %s
一起使用。
String.format("Invalid value1=%s for value2=%s", value1, value1)
%s
适用于所有类型,就像 {}
在您的记录器中一样。它将任何给定参数转换为字符串,这似乎正是您的要求。
slf4j Logger 有一个干净的格式化程序语法。 (花括号的使用)
org.slf4j.Logger.error("Invalid value1={} for value2={}", value1, value1)
下面的方法有类似的替代方法吗?我想要一个通用的 ({}) 而不是特定于类型的占位符。
String.format("Invalid value1=%d for value2=%d", value1, value1)
如果您愿意,可以使用 MessageFormat,但您需要指定参数编号:
MessageFormat.format("Invalid value1={0} for value2={1}", value1, value2);
您可以将 String.format
与 %s
一起使用。
String.format("Invalid value1=%s for value2=%s", value1, value1)
%s
适用于所有类型,就像 {}
在您的记录器中一样。它将任何给定参数转换为字符串,这似乎正是您的要求。