1

Mavenビルドを開始すると、このエラーで失敗します

"変換=s、フラグ=#"

以下のテストで。

public class Test {

    public static void main(String[] argv) {
        String a = String.format("%1$#" + (250 + 1) + "s", "");
        System.out.println("a = " + a);
    }
}

お知らせ下さい。

ありがとう。

4

1 に答える 1

3

したがって、これは実際には次のような呼び出しになります。

String.format("%1$#251s", "");

ドキュメントを見ると、このフォーマット文字列は、幅が251でフラグが。Formatterの文字列変換()を要求しています。s#

文字列変換のドキュメントには次のように記載されています。

'#'フラグが指定され、引数がFormattableでない場合、FormatFlagsConversionMismatchExceptionがスローされます。

現在java.lang.Stringは実装されていませんFormattable-したがって、文書化されているとおりに例外がスローされます。

これで何ができると思いましたか?

于 2012-10-09T18:21:06.380 に答える