フラグについて言えば、javadocには、フラグ ' ' (空のスペース) が、数字の先頭に記号「+」の代わりに空のスペースを自動的に挿入することが記載されています。ただし、試してみると、フォーマット指定子の最初のオプション引数が満たされている場合にのみ機能します。
System.out.printf("% d%n %1$ d%n",0x3);
両方のフォーマッタに空のスペースがありますが、後者のフォーマッタでのみ機能しますが%1$ d%n
、前者で% d%n
は、正の数を意味する先頭の空のスペースが存在しません (フラグ ' ' がオンになっていても)。
そのようなことが起こる特定の理由はありますか?前もって感謝します。