我需要对输出进行以下匹配(我主要关注百分比值):

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


我该如何解决?有没有办法在百分号后加空格?提前致谢。

最佳答案

两次使用String.format:

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

关于java - Java:移动百分号,或在百分号后加空格,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/29728723/

10-12 15:06