Maven Build 的 Java 格式字符串错误



当我启动我的 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 - 所以抛出异常,完全按照记录的那样。

期望这样做做什么?

最新更新