| 转换符 |
详细说明 |
示例 |
| %s |
字符串类型 |
“喜欢请收藏” |
| %c |
字符类型 |
‘m’ |
| %b |
布尔类型 |
true |
| %d |
整数类型(十进制) |
88 |
| %x |
整数类型(十六进制) |
FF |
| %o |
整数类型(八进制) |
77 |
| %f |
浮点类型 |
8.888 |
| %a |
十六进制浮点类型 |
FF.35AE |
| %e |
指数类型 |
9.38e+5 |
// 补齐空格并右对齐:
String.format("%10s, world", "Hello"); // 输出 " Hello, world"
String.format("%8d", 123); // 输出 " 123"
// 补齐空格并左对齐:
String.format("%-10s, world", "Hello"); // 输出 "Hello , world"
String.format("%-8d", 123); // 输出 "123 "
// 补齐 0 并对齐(仅对数字有效)
String.format("%08d", 123); // 输出 "00000123"
String.format("%-08d", 123); // 错误!不允许在右边补齐 0
// 输出最多N个字符
String.format("%.5s", "Hello, world"); // 输出 "Hello"
String.format("%.5s...", "Hello, world"); // 输出 "Hello..."
String.format("%10.5s...", "Hello, world"); // 输出 " Hello..."
// 输出逗号分隔数字
String.format("%,d", 1234567); // 输出 "1,234,567"
搭配转换符还有实现高级功能
| 标志 |
说明 |
示例 |
结果 |
|
|
| + |
为正数或者负数添加符号 |
(“%+d”,15) |
+15 |
|
|
| 0 |
数字前面补0(加密常用) |
(“%04d”, 99) |
0099 |
|
|
| 空格 |
在整数之前添加指定数量的空格 |
(“% 4d”, 99) |
99 |
|
|
| , |
以“,”对数字分组(常用显示金额) |
(“%,f”, 9999.99) |
9,999.990000 |
|
|
| - |
左对齐,不够位数的地方补上空格 |
("%-6d",8) |
8 |
|
|