——Java培训、Android培训、iOS培训、.Net培训、期待与您交流! ——-
Java 的格式化输出
方式:
- System.out.printf(“格式化字符串”, args…);
- String.format(“格式化字符串”, args…); 返回格式化后的字符串
- java.util.Formatter; new Formatter(PrintStream ps); 专门用于进行格式化输出的类. 上面两种方式的底层实现
格式化字符串的格式说明符语法:
%[argument_index$][flags][width][.precision]conversion
注意: flags 是修改输出格式的字符集。有效标志集取决于转换类型。 一般用不到, Pass, 反正我也不太懂..eg:
printf(“我爱%1$-10.5s”, “某某某”);%, 标识从这开始是一个占位符
1$, 参数列表中第一位
-10, - 代表左对齐, 10代表最少填充10个字符
.5, 如果最后要转化的类型为s(String), 则表示输出String时,字符的最大数量, 如果类型为f(浮点数), 则表示小数点后要保留的位数, 对于d(整型值) 使用此符号将会触发异常
s, 表示要转化输出的参数类型
关于日期类型的格式化输出,
我们一般使用SimpleDateFormat. 不推荐使用格式化字符串的方式.
- 注意:
在控制台测试时, 如果有中文字符, 我们会发现, 格式化的宽度对齐, 并没有理想中的那么好. 这是因为英文字符宽度和中文字符宽度不同导致的控制台输出问题. 如果你仔细查看, 会发现, 输出的总的字符个数(包括函数自动填充的空格)其实是一致的.