当我启动我的 maven 构建时,它失败并出现此错误
"转换 = s,标志 = #"
在下面的测试中。
public class Test {
public static void main(String[] argv) {
String a = String.format("%1$#" + (250 + 1) + "s", "");
System.out.println("a = " + a);
}
}
请指教。
谢谢。
所以这实际上完全归结为一个看起来像这样的调用:
String.format("%1$#251s", "");
如果您查看Formatter
文档,此格式字符串正在请求宽度为 251 且标志为 #
的字符串转换 ( s
)。
字符串转换的文档指出:
如果给定了"#"标志并且参数不是 Formattable ,则将抛出 FormatFlagsConversionMismatchException。
现在java.lang.String
没有实现Formattable
- 所以抛出异常,完全按照记录的那样。
你期望这样做做什么?