字符串模板格式代码详细用法
前言
如何简便地根据一个模板和几个变量生成相应的数个字符串呢?使用 format(String, Object...)
方法格式化字符串无疑是首选的方式。
先来上一段代码(Java),输出一个 mm:ss
格式的时间和对应时区。
1 |
|
这段代码会输出 Now the time is: 05:24 CST
。
可见写法十分简洁和方便,那除了 Java 之外的其他语言可以这样用吗?实际上,这种格式化代码的规范来自 C 的 std::printf(const char*, ...)
函数,理论上适用于一切阳间语言的 printf()
或字符串的 format()
等常见方法。
下面进入正题。
模板的基本用法
字符串形式的格式化代码称为字符串模板,在字符串模板中需要被实际的变量值替换的地方加上格式代码即可。格式代码的写法为 %[flags][width][.precision][length]specifier
其中 specifier
部分为基本格式字符,其余属性均为格式化参数,每个格式字符必须包含一个基本格式字符,并在其与 %
之间选择性添加格式化参数。
基本格式字符
字符 | 含义 | 支持的参数 |
---|---|---|
d | 十进制形式输出带符号整数(仅负数有符号) | |
o | 八进制形式输出无符号整数(无前缀0) | |
x/X | 十六进制形式输出无符号整数 |
未完待续
字符串模板格式代码详细用法
https://blog.maxelbk.eu.org/article/printf-format.html