「駑馬十駕」を信念に IT系情報を中心に調べた事をコツコツ綴っています。

Javaで「String.format」メソッドを使用して、数値をゼロパディング(ゼロ埋め)したり、文字列へ半角スペース埋めする方法をご紹介します。

formatメソッドの書式

    • 引数  型       説明
      第1引数String format書式文字列
      第2引数Object... args書式文字列の書式指示子により参照される引数。書式指示子よりも引数が多い場合、余分な引数は無視される。引数の数は変動し、ゼロの場合もある。引数の最大数は、Java 仮想マシン仕様で定義されている Java 配列の最大次元により制限される。引数が null の場合、動作は変換に応じて異なる

発生する例外

  • IllegalFormatException – 書式文字列が、不正な構文、所定の引数と互換性がない書式指示子、書式文字列に与えられた不適切な引数、あるいはほかの不正な条件を含む場合。
  • NullPointerException – format が null の場合

用途別の記述例

    用途 記述例              備考
    文字列の先頭を空白埋めするString.format(\%6s\" \"abc\")"指定文字列を最大6桁まで文字列の左側に空文字を追加します。
    文字列の後ろへ空白埋めするString.format(\%-6s\" \"abc\")"指定文字列を最大6桁まで文字列の右側に空文字を追加します。
    数字の先頭を0埋めするString.format(\%06d\" 123)"指定数字を最大6桁まで文字列の左側にゼロパディングします。
    数字を3桁ごとにカンマ区切りする String.format(\%d\" 123456789)"指定数字を3桁毎にカンマ区切りします。

サンプルJavaソース

String型項目に対してゼロパディングしたい場合、一旦formatで指定桁数に整えてからreplaceメソッドを使用する事でゼロパディング可能となります。

JUnitサンプル

String.formatのJavaDoc

Ads by Google

0 0
Article Rating
申し込む
注目する
guest

0 コメント一覧
最も古い
最新 高評価
インラインフィードバック
すべてのコメントを見る
0
あなたの考えが大好きです、コメントしてください。x