String format(String format, Object... args)
The format specifiers for general, character, and numeric types have the following syntax:
%[argument_index$][flags][width][.precision]conversion
- argument_index is a decimal integer indicating the position of the argument in the argument list. It starts from "1$".
- flags is a set of characters that modify the output format.
Flag | General | Character | Integer | Floating Point | Date/Time | Description |
'-' | Y | Y | Y | Y | Y | The result will be left-justified |
'#' | Y | - | Y | Y | - | The result should use a conversion-dependent alternate form |
'+' | - | - | Y | Y | - | The result will always include a sign |
' ' | - | - | Y | Y | - | The result will include a leading space for positive values |
'0' | - | - | Y | Y | - | The result will be zero-padded |
',' | - | - | Y | Y | - | The result will include locale-specific grouping separators |
'(' | - | - | Y | Y | - | The result will enclose negative numbers in parentheses |
- width is a non-negative decimal interger indicating the minimum number of the number of characters to be written to the output.
- For the floating-point conversions
'e'
, 'E'
, and 'f'
the precision is the number of digits after the decimal separator. If the conversion is 'g'
or 'G'
, then the precision is the total number of digits in the resulting magnitude after rounding. If the conversion is 'a'
or 'A'
, then the precision must not be specified. - conversion are divided into the following categories:
General, Character, Numeric(Integer, Floating Point), Date/Time, Percent, Line Separator
Conversion | Argument Category | Description |
---|
'b' , 'B' | general | If the argument arg is null , then the result is "false ". If arg is a boolean or Boolean , then the result is the string returned by String.valueOf(arg) . Otherwise, the result is "true". |
'h' , 'H' | general | If the argument arg is null , then the result is "null ". Otherwise, the result is obtained by invoking Integer.toHexString(arg.hashCode()) . |
's' , 'S' | general | If the argument arg is null , then the result is "null ". If arg implements Formattable , then arg.formatTo is invoked. Otherwise, the result is obtained by invokingarg.toString() . |
'c' , 'C' | character | The result is a Unicode character |
'd' | integral | The result is formatted as a decimal integer |
'o' | integral | The result is formatted as an octal integer |
'x' , 'X' | integral | The result is formatted as a hexadecimal integer |
'e' , 'E' | floating point | The result is formatted as a decimal number in computerized scientific notation |
'f' | floating point | The result is formatted as a decimal number |
'g' , 'G' | floating point | The result is formatted using computerized scientific notation or decimal format, depending on the precision and the value after rounding. |
'a' , 'A' | floating point | The result is formatted as a hexadecimal floating-point number with a significand and an exponent |
't' , 'T' | date/time | Prefix for date and time conversion characters. See Date/Time Conversions. |
'%' | percent | The result is a literal '%' ('\u0025') |
'n' | line separator | The result is the platform-specific line separator |
原标题:String.format Tutorial
关键词:string