Java:移动百分号,或者在百分号后补空格
Java: Moving percentage sign, or padding with spaces after the percentage sign
我的输出需要匹配以下内容(我主要关心百分比值):
100% | 03 games
75% | 04 games
14% | 07 games
我很难让他们排成一排。第一个整数需要左对齐。我尝试使用 printf("%-3d%%", percentage)
- 它们排列得很好,但第一个整数和百分号之间有一个间隙(当它不等于 100 时):
100% | 03 games
75 % | 04 games
14 % | 07 games
我还尝试了 DecimalFormat 说明符 "##0%"
,但问题是具有不同位数的百分比值不对齐 - [= 之间始终只有一个 space 16=]和|
,有时需要两个或三个。
100% | 03 games
75% | 04 games
14% | 07 games
我该如何解决这个问题?有没有办法在百分号后用 spaces 填充?提前致谢。
使用String.format两次:
String inner = format("%d%%", yourNumber); // creates "42%"
String outer = format("%-4s", inner); // creates "42% "
我的输出需要匹配以下内容(我主要关心百分比值):
100% | 03 games
75% | 04 games
14% | 07 games
我很难让他们排成一排。第一个整数需要左对齐。我尝试使用 printf("%-3d%%", percentage)
- 它们排列得很好,但第一个整数和百分号之间有一个间隙(当它不等于 100 时):
100% | 03 games
75 % | 04 games
14 % | 07 games
我还尝试了 DecimalFormat 说明符 "##0%"
,但问题是具有不同位数的百分比值不对齐 - [= 之间始终只有一个 space 16=]和|
,有时需要两个或三个。
100% | 03 games
75% | 04 games
14% | 07 games
我该如何解决这个问题?有没有办法在百分号后用 spaces 填充?提前致谢。
使用String.format两次:
String inner = format("%d%%", yourNumber); // creates "42%"
String outer = format("%-4s", inner); // creates "42% "