【Java基础】10. 格式化输出

System.out.printf(format,items);,format is a string consists of substrings and format specifiers. A format specifier specifies how an item should be displayed. An item may be a numeric value, character, boolean value, or a string. Each specifier begins with a percent sign.

Frequently-used specifiers

Specifier

Output

Example

%b

a boolean value

true or false

%c

a character

‘a’

%e

a number in standard scientfic notation

4.55600e+01

%s

a string

“Java is cool”

占位符完整格式为:% [index$] [标识]*[最小宽度] [.精度] 转换符%[argument_index$][flags][width][.precision]conversion

针对不同数据类型的格式化,占位符的格式将有所裁剪。

  • %:若要在占位符内部使用%,则需要写成%%
  • index:位置索引从1开始计算,用于指定对索引相应的实参进行格式化并替换掉该占位符
  • flags:对齐方式,默认右对齐,想要左对齐的话,添加 -。可以同时使用多个flags
  • width:设置格式化后的字符串最小长度,不够时会添加空格
  • .precision:用于 String 时,表示打印 String 输出字符的最大数量;用于浮点数时,表示小数部分要显示的位数(默认是 6 位),多则舍入,少则补齐;整数没有小数部分,所以 precision 用于整数会引发异常。
  • conversion:用于指定格式化的样式,和限制对应入参的数据类型

注意:索引index必须紧跟在%后面,以$终止;可以用<标志表明前面格式说明中的参数被再次使用

java format函数 java format specifier_java format函数

类型转换字符

  • d:整数类型
  • c:Unicode 字符
  • b:Boolean 值
  • s:String
  • f:浮点数(十进制)
  • e:浮点数(科学计数)
  • x:整数
  • h:散列码(十六进制)
  • %:字符 “%”

java format函数 java format specifier_占位符_02


java format函数 java format specifier_数据类型_03


java format函数 java format specifier_java format函数_04


java format函数 java format specifier_java format函数_05


java format函数 java format specifier_数据类型_06