很多情况希望以某一种格式来显示数值。
double interest = 16.45843123;
System.out.printf("interest is %4.2f",interest);
%:格式标识符
4:域宽度
2:精度(小数点后保留几位)
f:转换码,格式限定符,暗示着以某种格式来打印
指定宽度和精度的例子:
%5c:输出字符并在字符前加四个空格
%6b:输出布尔值,false前加一个空格,true前加两个空格
%5d:输出整数,宽度至少为5,如果位数小于5,则在数字面前加空格,如果该条目位数大于5,则自动增加宽度
%10.2f:输出的浮点数宽度至少为10.包括小数点和小数点后两位,如果条目宽度小于10,则在数字前加空格,如果大于10,则自己增加宽度。
%10.2e:输出的浮点数宽度至少为10..包括小数点和小数点后两位和指数部分。如果位数小于10,则加空格。
%12s:输出的字符串宽度至少为12,如果条目宽度小于12,则在前面加空格,如果大于12,则自己增加宽度。
如果要显示一个带逗号的数字,可以在数字限定符前面添加一个逗号。
System.out.printf("%,8d, %,10.1f\n",12345678,12345678.263);
结果: