Java的格式化输出等同于String.Format,与C有很大的相似,比如
      System.out.printf("%8.2f", x);
在printf中,可以使用多个参数,例如:
      System.out.printf("Hello, %s. Next year, you'll be %d", name, age);

    用于printf的转换符如下表:

d十进制整数  
x十六进制整数9f
o八进制整数
f定点浮点数15.9
e指数浮点数1.59e+01
g通常浮点数 
a十六进制浮点数0x1.fccdp3
s字符串Hello
c字符H
b布尔型TRue
h散列码42628b2
tx日期时间见时间介绍表
%百分号%
n分隔符      

在printf函数中,可以使用多个标志,如:
   System.out.printf("%,.2f", 10000.0 / 3.0);
用于printf的标志如下表

+打印数字前的符号+3333.33
space在正数之前加空格| 3333.33|
在数字前补0003333.33
-左对齐|3333.33 |
(负数括在括号内(3333.33)
,添加分组分隔符3,333.33
# (for f )包含小数点3,333.
# (for x or o)添加前缀 0x 或 00xcafe
^转化为大写0XCAFE
$指定格式化参数索引,如%1$d,%1$d表示以十进制
和十六进制打印第一个参数
159 9F
<格式化前面参数,如%d%<x表示以十进制和十六进
制打印同一个参数
159 9F

  时间日期的转换符如下:

C完整日期和时间Mon Feb 09 18:05:19 PST 2004
FISO 8601 日期2004-02-09
D美国时间格式 (mm/dd/year)02/09/2004
T24小时时间18:05:19
r12小时时间06:05:19 pm
R24小时无秒时间18:05
Y四位年
y年的后两位
C年的前两位
B月的完整拼写February
b or h月的缩写Feb
m两位月(前补0)
d两位日(前补0)
e日期(前不补0)
A完整星期几Monday
a星期几的缩写Mon
j这一年的第多少天,三位补0
H24小时制小时,两位补0
k24小时制小时,两位不补0
I12小时制小时,两位补0
l12小时制小时,两位不补0
M分钟,两位补0
S秒,两位补0
L毫秒,三位补0
N毫微秒,九位补0
P上下午大写PM
p上下午小写pm
zRFC 822 numeric offset from GMT-0800
Z时区PST
s1970-01-01 00:00:00起秒数
E1970-01-01 00:00:00起毫秒数
05-06 07:28
查看更多