| 書式 | 説明 | 例 | |
|---|---|---|---|
| % | 指定を開始する。「%」自身を出力したい場合は「%%」とする。 | printf("%%%n"); | % | 
| d | 整数を十進数で出力する。(nullの時は「null」) | printf("%d%n", 123); | 123 | 
| o | 整数を八進数で出力する。(nullの時は「null」) | printf("%o%n", 123); | 173 | 
| x | 整数を十六進数で出力する。(nullの時は「null」) | printf("%x%n", 123); | 7b | 
| c | 文字を出力する。(nullの時は「null」) | printf("%c%n", 'x'); | x | 
| s | 文字列を出力する。(nullの時は「null」) (toString()あるいはFormattableで文字列に変換される) | printf("%s%n", "xyz"); | xyz | 
| - | 左詰で出力する(省略時は右詰)。 | printf("[%-4d]%n", 123); | [123 ] | 
| 0 | 足りない桁数を0埋めする。 数値系(%d,%o,%x)で使用可能。[2009-10-21] 他(例えば%s,%b,%h)では使用不可(例外が発生する)。 | printf("%04d%n", 123); | 0123 | 
| # | 代替フォームで変換する。 すなわち、「%o」において頭に「0」を、「%x」において頭に「0x」を付けて出力する。 「%s」の場合はデフォルトでは特に何も無さそう。「%d」では例外が発生する。 | printf("%#o%n", 
  123); | 0173 | 
| 数 | 桁数(最小フィールド幅)を指定する。 最低限確保される桁数であり、この数値以上の桁の値は全部出力される。 →%s(文字列)の場合は、文字数である | printf("[%4d]%n", 123); | [ 123] | 
| .数 | 精度(最大表示幅)を指定する。 この桁数より大きい場合は切り捨てられ、出力されない。 →%s(文字列)の場合は、文字数である | printf("[%.4s]%n", "xyzab"); | [xyza] | 
| 数$ | 引数の番号を指定する(値の引数のうち、一番左が1)。 通常これは省略されており、その場合は引数の並び順に従って値が出力される。 →C言語とJavaの違い | printf("%d:%d:%d%n",11,22,33); | 11:22:33 |