
可以看出String.format(String format, Object... args) 这个方法,是java1.5新增加的字符串格式化方法。
String formatted = String.format("%s今年%d岁。", "小李", 30); // "小李今年30岁。"
- 这个方法第一个参数是格式串,后面的参数都是格式串的参数,用于替换格式串中的占位符。
- 占位符以 "%xxx" 的形式表示,不同的参数类型要用不同的字母。
String.format()返回值类型为字符串,也就是格式化的结果。
占位符的类型
| 字母 | 适用参数类型 | 说明 |
|---|---|---|
| %a | 浮点数 | 以16进制输出浮点数 |
| %b / %B | 任意值 | 如果参数为 null 则输出 false,否则输出 true |
| %c / %C | 字符或整数 | 输出对应的 Unicode 字符 |
| %d | 整数 | 对整数进行格式化输出 |
| %e / %E | 浮点数 | 以科学记数法输出浮点数 |
| %f | 浮点数 | 对浮点数进行格式化输出 |
| %g / %G | 浮点数 | 以条件来决定是否以科学记数法方式输出浮点数 |
| %h / %H | 任意值 | 以 16 进制输出参数的 hashCode() 返回值 |
| %o | 整数 | 以8进制输出整数 |
| %s / %S | 字符串 | 对字符串进行格式化输出 |
| %t | 日期时间 | 对日期时间进行格式化输出 |
| %x / %X | 整数 | 以16进制输出整数 |
| %n | 无 | 换行符 |
| %% | 无 | 百分号本身 |
常用 %s、%d
参考:
string.format()详解 - 双间 - 博客园
String.format()的详细用法_Archie_java的博客-CSDN博客_string.format()