引用自 Java中String.format的使用

String类的format()方法用于创建格式化的字符串一级连接多个字符串对象。format()方法有两种重载形式。

  • format(String format, Object... args) 新字符串使用本地语言环境,根据字符串格式和参数生成格式化的新字符串。
  • format(Locale locale, String format, Object... args) 使用制定的语言环境,根据字符串格式和参数生成格式化的字符串。

# 转换符

转换符 说明
%s 字符串类型
%c 字符类型
%b 布尔类型
%d 十进制整数
%x 十六进制整数
%o 八进制整数
%f 浮点类型
%a 十六进制浮点类型
%e 指数类型
%g 通用浮点类型(f和e类型中较短的)
%h 散列码
%% 百分号
%n 换行符
%tx 日期与时间类型(x代表不同的日期与时间转换符)

# 搭配转换符的标志

标志 说明
+ 为正数或者负数添加符号
左对齐
0 数字前面补0
空格 在整数之前添加指定数量的空格
, 以“,”对数字分组
( 使用括号包含负数
# 如果是浮点数则包含小数点,如果是16进制或8进制则添加0x或0
< 格式化前一个转换符所描述的参数
$ 被格式化的参数索引

# 日期与时间转换符

转换符 说明
c 包括全部日期和时间信息
F “年-月-日”格式
D “月/日/年”格式
r “HH:MM:SS PM”格式(12时制)
T “HH:MM:SS”格式(24时制)
R “HH:MM”格式(24时制)

# 日期转换符

转换符 说明
b或者h 月份简称
B 月份全称
a 星期的简称
A 星期的全称
C 年的前两位数字(不足两位前面补0)
y 年的后两位数字(不足两位前面补0)
Y 4位数字的年份(不足4位前面补0)
j 一年中的天数(即年的第几天)
m 两位数字的月份(不足两位前面补0)
d 两位数字的日(不足两位前面补0)
e 月份的日(前面不补0)

# 时间转换符

转换符 说明
H 2位数字24时制的小时(不足2位前面补0)
I 2位数字12时制的小时(不足2位前面补0)
k 2位数字24时制的小时(前面不补0)
l 2位数字12时制的小时(前面不补0)
M 2位数字的分钟(不足2位前面补0)
S 2位数字的秒(不足2位前面补0)
L 3位数字的毫秒(不足3位前面补0)
N 9位数字的毫秒数(不足9位前面补0)
p 小写字母的上午或下午标记
z 相对于GMT的RFC822时区的偏移量
Z 时区缩写字符串
s 1970-1-1 00:00:00 到现在所经过的秒数
Q 1970-1-1 00:00:00 到现在所经过的毫秒数