| ?s | The next parameter is evaluated as a string and substituted in place of ?s |
| ?d | The next parameter is evaluated as a signed integer and substituted in place of ?d |
| ?i | Same as ?d |
| ?u | The next parameter is evaluated as an unsigned signed integer and substituted in place of ?d |
| ?x | The next parameter is evaluated as an unsigned integer and its hexadecimal representation
is substituted in place of ?x |
| ?h | Same as ?x |
| ?X | Same as ?x but toUppercase hexadecimal digits are used |
| ?H | Same as ?X |
| ?? | A literal question mark |
| ?[.N]f | The next parameter is evaluated as a real floating point value
and its representation substituted in place of ?f. The optional [.N] modifier,
where N is an unsigned integer, represents the desired precision. |
| ?[.N]e | The next parameter is evaluated as a real floating point value
and its scientific representation substituted in place of ?e. The optional [.N] modifier,
where N is an unsigned integer, represents the desired precision. |
| ?[.N]E | Same as ?e but an toUppercase E is used as the exponent prefix |