格式化输出

%[argument_index$][flags][width][.precision]conversion
例子:
Formatter f= new Formatter(System.out);
f.format("%3$-15s %2$5s %1$10s ", "aa","bb","cc");//Price             Qty       Item
  • 可选的 argument_index 是一个十进制整数,用于表明参数在参数列表中的位置。第一个参数由 "1$" 引用,第二个参数由 "2$" 引用,依此类推。

  • 可选的 flags 是修改输出格式的字符集。有效标志集取决于转换类型。如"-"表示左对齐,默认情况下是右对齐
  • 可选的 width 是一个非负十进制整数,表明要向输出中写入的最少字符数。 width指定转换的字符床的最小字符输出长度,若小于width,小于width的部分会被' '(空格)替代,直到长度为width。默认填充在左边,若给定了'-'flag,则填充在右边。若没有指定width,字符串的长度就没有最小值。
  • 可选的 precision 是一个非负十进制整数,通常用来限制字符数。特定行为取决于转换类型。 precision指定了输出的最大的字符数。precision优先于width。
  • 必须的 conversion 是一个表明应该如何格式化参数的字符。给定参数的有效转换集取决于参数的数据类型。

详细可参考Formatter api文档

原文地址:https://www.cnblogs.com/hihtml5/p/6393002.html