変数の内容を整形して出力する / フォーマット関数の利用 - Java

Javaで変数の内容を整形して出力する場合はString.format関数を用います。

書式

String.format(書式文字列, 変数1, 変数2, ...変数n);

書式文字列

書式文字列での書式指示子は以下となります。
%[argument_index$][flags][width][.precision]conversion

パラメータ種類意味
argument_indexオプション引数リスト内での引数の位置を示す 10 進整数です。最初の引数は「1$」、2 番目の引数は「2$」となります
flagsオプション出力書式を変更する文字のセット
widthオプション出力に書き込む最小文字数を示す正の 10 進整数
precisionオプション文字数を制限するために通常使用される正の 10 進整数 (おもに桁数を設定)
conversion必須引数を書式設定する方法を指定

conversionの値

書式指示子のconversionは以下の文字で表します。
変換カテゴリ意味
b, B一般ブール値引数がboolean または Boolean の場合、結果は String.valueOf() により返される文字列になる。引数がnullの場合はfalse、それ以外の場合はtrueになる。
h, H一般16進数Integer.toHexString(arg.hashCode()) の呼び出しで取得される値。引数がnullの場合はnullとなる。
s, S一般文字列が Formattable を実装する場合に、arg.formatTo が呼び出されます。そうでない場合、結果は arg.toString() の呼び出しで取得される値。引数がnullの場合はnullとなる。
c, C文字文字Unicode 文字を出力する
d整数10進数10 進整数として書式設定される。
o整数8進数結果は、8 進整数として書式設定される。
x, X整数16進数16 進整数として書式設定される。
e, E浮動小数点小数結果は、16 進整数として書式設定される。
f浮動小数点小数10 進数として書式設定される。
g, G浮動小数点小数四捨五入処理後の精度および値に応じて浮動小数点表示形式または 10 進数書式を使用して書式設定される。
a, A浮動小数点小数有効数字および指数を持つ浮動小数点数として書式設定される。
t, T日付/時刻日付および時刻変換
%パーセント結果は、リテラル「%」(\u0025) になる。
n行区切り文字結果は、プラットフォーム固有の行区切り文字になる。

コードサンプル

変数の値を整形して文字列を作成し、その文字列を標準出力で出力します。

コード

package javaapplicationformat;
public class Main {
    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {
        // TODO code application logic here
      int a = 12;
      int b = 33;
      int c = 6;
      String d = "Goose";
      float e = 3.333678f;

      String text = String.format("%d,%d - 値: %s %d %.2f", a,b,d,c,e);

      System.out.println(text);
    }
}

実行結果

12,33 - 値: Goose 6 3.33
著者
iPentecのプログラマー、最近はAIの積極的な活用にも取り組み中。
とっても恥ずかしがり。
最終更新日: 2024-01-06
作成日: 2011-02-22
iPentec all rights reserverd.