使用String.format()打印空格

时间:2009-07-02 11:15:57

标签: java string format

我怎么能改写这个:

for (int i = 0; i < numberOfSpaces; i++) {
    System.out.print(" ");
}

使用String.format()

PS

我很确定这可能是javadoc is a bit confusing

2 个答案:

答案 0 :(得分:67)

您需要指定字段的最小宽度。

String.format("%" + numberOfSpaces + "s", ""); 

为什么要生成一定长度的字符串。

如果您希望这个长度的列具有值,那么您可以这样做:

String.format("%" + numberOfSpaces + "s", "Hello"); 

它为您提供numberOfSpaces-5空格,然后是Hello。如果你想让Hello显示在左边,那么在numberOfSpaces之前添加一个减号。

答案 1 :(得分:17)

int numberOfSpaces = 3;
String space = String.format("%"+ numberOfSpaces +"s", " ");