简介:
制定字符串格式和参数生成格式化的新字符串。像C语言的printf()
常用转换符说明
%s
字符串类型
"ihello world"
%c
字符类型
'a'
%b
布尔类型
true
%d
整数类型(十进制)
100
%x
整数类型(十六进制)
FF
%f
浮点类型
99.99
%%
百分比类型
%
%n
换行符
%tx
日期与时间类型(x代表不同的日期与时间转换符 )
转换符标志
标志 说明 示例 结果
+ 为整数或者负数添加符号 "%+d",15 +15
- 左对齐 "%-5d",15 |15 |
0 数字前面补0 "%04d",99 0099
空格 在整数之前添加指定数量的空格 "% 4d",99 | 99|
, 以,对数字分组 "%,f",9999.99 9,999.990000
( 使用括号包含负数 "%(f",-99.99 (99.99)
# 如果是浮点数则包含小数点,如果是16进制或8进制则添加0x或0 "%#x",99 0x63 "%#o",99 0143
< 格式化前一个转换符所描述的参数 "%f和%<3.2f",99.45 99.450000和99.45
$ 被格式化的参数索引 "%1$d,%2$s", 99,abc
. 保留小数位数 "%.5f",5.56 5.56000
日期转换
import java.util.*;
public class HelloWorld {
public static void main(String []args) {
Date date=new Date();
System.out.printf("全部日期和时间信息:%tc%n",date);
//全部日期和时间信息:Fri Apr 26 04:09:15 GMT 2019
System.out.printf("年-月-日格式:%tF%n",date);
//年-月-日格式:2019-04-26
System.out.printf("月/日/年格式:%tD%n",date);
//月/日/年格式:04/26/19
System.out.printf("HH:MM:SS PM格式(12时制):%tr%n",date);
//HH:MM:SS PM格式(12时制):04:10:31 AM
System.out.printf("HH:MM:SS格式(24时制):%tT%n",date);
//HH:MM:SS格式(24时制):04:10:31
System.out.printf("HH:MM格式(24时制):%tR",date);
//HH:MM格式(24时制):04:10
}
}
举例说明
str=String.format("Hi,%s:%s.%s", "王南","王力","王张");
//Hi,王南:王力.王张
System.out.printf("3>7的结果是:%b %n", 3>7);
//3>7的结果是:false
System.out.printf("百分之85表示出来是%d%% %n", 85);
//百分之85表示出来是85%
System.out.printf("整数分组的效果是:%,d%n", 9989997);
//整数分组的效果是:9,989,997
System.out.printf("一本书的价格是:%.5f元%n", 49.8);
//一本书的价格是:49.80000元
参考:https://blog.csdn.net/github_36617621/article/details/78643277