0

スペースの数を動的に変更する必要があるアプリケーションに取り組んでいます。スペースを1つ増やす必要があるたびに。その背後にあるロジックは知っていますが、構文に役立つドキュメントは見つかりませんでした。

System.out.printf("%3s", " ");

上記のコードはネストされたループ内にあります。数値 3 を動的にしたいと思います。必要なことを達成するには、数値を変数にする必要があります。s の前の数値を変数に設定するにはどうすればよいですか?

4

3 に答える 3

3

お気に入り:

int gap = 3;

System.out.printf("%" + gap + "s", " ");
于 2013-11-10T19:51:23.237 に答える
0

印刷出力の書式設定では、書式指定子はパーセント記号 ( ) で始まり%、コンバーター ( ) で終わりsます。コンバーターは、フォーマットする引数のタイプを示す文字です。パーセント記号 (%) とコンバーターの間には、オプションのフラグと指定子 ( width、精度、符号) を含めることができます。

long n = 461012;
System.out.format("%08d%n", n); // prints "00461012"

上記の例では:

  1. dn10 進整数として出力されるターゲット パラメータを指定するコンバータです。
  2. 08はフラグです。表示される 10 進整数を指定する場合、幅は 8 文字で、必要に応じて先行ゼロが必要です。

ドキュメントを確認してください:クラスフォーマッタ数値印刷出力のフォーマット

于 2013-11-10T19:55:01.523 に答える
0
String space = ""

for(int i = 0; i < 5; i++){
    space += " ";
    System.out.printf("%s", i + space + ",");
}
于 2013-11-10T19:53:40.750 に答える