我想创建这样的东西,每行都被“管道”字符包围。
| First Line |
| 100 200 |
| 1000 2000 |
- 在第一行,右边的填充是 1 个空格。
- 在第二行中,右边的填充是 4 个空格。
- 第三行是2个空格。
我正在尝试通过 printf + 格式化(而不是明确计算填充数)来做到这一点,但我在格式化语法上遇到了一些问题。这是我当前的代码:
System.out.printf("| FIRST LINE" + "%50s\n", "|");
System.out.printf("| 100 200" + "%50s", "|");
System.out.printf("| 1000 2000" + "%50s", "|");
我试图表明每行的最大值为 50 个字符,即该行中的第一个字符是“管道”,而该行中的最后一个字符是另一个“管道”)。
问题是放置 50 个空格时没有考虑左侧部分已经使用的字符(即“| FIRST LINE”)。上面的代码类似于:
System.out.format("%s %50s\n", "| FIRST LINE", "|");
那么,如何定义输出格式以便将两个字符串都考虑到宽度?
提前致谢。