如何在 java 中以类似列的形式打印字符串
How to print strings in column-like in java
假设我想打印 3 行和每行旁边的一个数字,用 3 个制表符分隔,输出如下所示:
this is a line 3
this is a medium line 3
this is a very long line 3
好的,所有这些行都用带有 3 个制表符的“3”数字分隔。
有没有办法让所有“3”数字都像这样出现在另一个下面? :
this is a line 3
this is a medium line 3
this is a very long line 3
本质上,您希望为每一列输出一个填充的 String
,该列的长度等于最长可能值的长度。您可以手动执行此操作,在必要时填充字符串,或者使用 System.out.format 并使用一个简单的命令填充输出:-
System.out.format("%20s%5d", str, val);
在内部,这使用 Formatter,因此第一个参数使用该语法来决定有多少个字符(在本例中为 32 个字符串 %20s
和一个 10 个字符的十进制整数 %5d
)以下每个变量都占用。
假设我想打印 3 行和每行旁边的一个数字,用 3 个制表符分隔,输出如下所示:
this is a line 3 this is a medium line 3 this is a very long line 3
好的,所有这些行都用带有 3 个制表符的“3”数字分隔。 有没有办法让所有“3”数字都像这样出现在另一个下面? :
this is a line 3 this is a medium line 3 this is a very long line 3
本质上,您希望为每一列输出一个填充的 String
,该列的长度等于最长可能值的长度。您可以手动执行此操作,在必要时填充字符串,或者使用 System.out.format 并使用一个简单的命令填充输出:-
System.out.format("%20s%5d", str, val);
在内部,这使用 Formatter,因此第一个参数使用该语法来决定有多少个字符(在本例中为 32 个字符串 %20s
和一个 10 个字符的十进制整数 %5d
)以下每个变量都占用。