【问题标题】:Java: Moving percentage sign, or padding with spaces after the percentage signJava:移动百分号,或在百分号后填充空格
【发布时间】:2015-04-19 10:40:37
【问题描述】:

我需要我的输出匹配以下(我主要关心百分比值):

100% | 03 games
75%  | 04 games
14%  | 07 games

我很难让它们排成一列。第一个整数需要左对齐。我尝试使用printf("%-3d%%", percentage) - 它们排列得很好,但是第一个整数和百分号之间存在差距(当它不等于 100 时):

100% | 03 games
75 % | 04 games
14 % | 07 games

我还尝试了 DecimalFormat 说明符 "##0%",但问题是具有不同位数的百分比值不对齐 - 在 %| 之间总是只有一个空格,当有有时需要两个或三个。

100% | 03 games
75% | 04 games
14% | 07 games 

我该如何解决这个问题?有没有办法在百分号后用空格填充?提前致谢。

【问题讨论】:

  • 如果可以的话,尝试将控制台的字体更改为consolas或courier

标签: java printf percentage decimalformat


【解决方案1】:

两次使用String.format:

String inner = format("%d%%", yourNumber); // creates "42%"
String outer = format("%-4s", inner); // creates "42% "

【讨论】:

    猜你喜欢
    • 2019-01-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-02-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多