String.format()方法
重载方法
format(String format, Object… args) 新字符串使用本地语言环境,制定字符串格式和参数生成格式化的新字符串。
format(Locale locale, String format, Object… args) 使用指定的语言环境(简体中文,繁体中文,英文等),制定字符串格式和参数生成格式化的字符串。
转换符说明
转换符 | 说明 | 示例 |
---|---|---|
%s | 字符串类型 | "直着走的螃蟹" |
%c | 字符类型 | 'C' |
%b | 布尔类型 | true |
%d | 整数类型(十进制) | 22 |
%x | 整数类型(十六进制) | AF |
%o | 整数类型(八进制) | 77 |
%f | 浮点类型 | 11.22 |
%a | 十六进制浮点类型 | AF.22 |
%e | 指数类型 | 11.22e+6 |
%g | 通用浮点类型 | f和e类型中较短的 |
%h | 散列码 | |
%% | 百分比类型 | % |
%n | 换行符 | |
%tx | 日期与时间类型(x代表不同的日期与时间转换符) | 在下文 |
搭配转换符的标志
日期和时间字符串格式化
转换符 | 说明 | 示例 |
---|---|---|
c | 包括全部日期和时间信息 | 星期三 十一月 04 13:33:07 CST 2020 |
F | "年-月-日"格式 | 2020-11-04 |
D | "月/日/年"格式 | 11/04/20 |
r | "HH:MM:SS PM"格式(12小时制) | 01:35:13 下午 |
T | "HH:MM:SS"格式(24小时制) | 13:35:13 |
R | "HH:MM"格式(24小时制) | 13:35 |
时间格式转换符
转换符 | 说明 | 示例 |
---|---|---|
H | 2位数字24小时制的小时(不足2位前面补0) | 13 |
I | 2位数字12小时制(不足2位前面补0) | 01 |
K | 2位数字24小时制的小时(前面不不0) | 13 |
l | 2位数字12小时制的小时(前面不补0) | 1 |
M | 2位数字的分钟(不足2位前面补0) | 22 |
S | 2位数字的秒(不足2位前面补0) | 21 |
L | 3位数字的毫秒(不足3位前面补0) | 423 |
N | 9位数字的毫秒数(不足9位后面补0) | 423000000 |
P | 小写字母的上午或下午标记 | 中:下午 英:pm |
z | 相当于GMT的RFC822时区的偏移量 | +0800 |
Z | 时区缩写字符串 | CST |
s | 1970-1-1 00:00:00 到现在所经过的秒数 | 1604468661 |
Q | 1970-1-1 00:00:00 到现在所经过的毫秒数 | 1604468661423 |
常用示例
1、获得固定长度的数字(不足的前面补0)
String str = String.format("%08d", 22);
System.out.println("输出8位固定长度的数字" + str);
输出:
输出8位固定长度的数字:00000022
参考链接:
https://blog.csdn.net/sinat_41815248/article/details/86442622
https://blog.csdn.net/wsc912406860/article/details/82771386
十步杀一人,千里不留行