在java中的一定数量的空格后显示符号

时间:2014-03-16 00:39:31

标签: java

我的输出看起来像这样

  000(05.00)      *|
  001(25.00)      ******|
  002(36.00)      **********|

理想情况下,我希望我的输出是这个......

  000(05.00)      *         |
  001(25.00)      ******    |
  002(36.00)      **********|

我将此作为我的变量......

  private static String MAX_REP = "|";

我可以做什么来MAX_REP为同一地点的每一行打印该栏?

2 个答案:

答案 0 :(得分:1)

首先,将每一行记录为字符串。

然后计算字符串的长度。在打印时在MAX_REP之前添加N-k个空格,其中N是您想要的位置,k是给定行的长度。

答案 1 :(得分:0)

在没有看到你的代码的情况下,很难知道你在做什么,但是根据输出的外观,你想要填充星空没有占用的空格数,直到持有|的某个点。 。

如果您知道*的数量,那么就像在numStars之前从numChars的字符位置总数中减去明星数量|一样简单:

int numSpaces = numChars - numStars;

然后你添加那么多空格。例如,使用org.apache.commons.lang3.StringUtils

String myStr = output + StringUtils.repeat("*", numStars) + StringUtils.repeat(" ", numSpaces) + "|";