当我开始我的 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
文档,此格式字符串请求字符串转换 ( s
),宽度为 251,标志为#
.
字符串转换的文档状态:
如果给出了 '#' 标志并且参数不是 Formattable ,则将抛出 FormatFlagsConversionMismatchException。
现在java.lang.String
没有实现Formattable
- 所以抛出异常,完全按照文档记录。
你期望这会做什么?