1. ホーム
  2. java

[解決済み] Java String Format を使って整数をフォーマットする

2022-06-03 16:39:41

質問

JavaでString.formatメソッドを使用して、整数の前にゼロを与えることは可能でしょうか?

例えば

1 は 001 になります。

2は002になります。

...

11は011になります

12は012になります。

...

526は526のまま

...など

とりあえず、以下のコードを試してみました。

String imageName = "_%3d" + "_%s";

for( int i = 0; i < 1000; i++ ){
    System.out.println( String.format( imageName, i, "foo" ) );
}

残念ながら、これは3つの空のスペースで数字の前になります。代わりに数字をゼロで先行させることは可能でしょうか?

どのように解決するのですか?

使用方法 %03d を整数の書式指定子として使用します。このとき 0 は、数値が3桁(この場合は)未満の場合はゼロ埋めされることを意味する。

を参照してください。 Formatter 他の修飾子については、ドキュメントを参照してください。