我有下面的Java代码来生成零填充的数字。
DecimalFormat fmt = new DecimalFormat("000");
for (int y=1; y<12; y++)
{
System.out.print(fmt.format(y) + " ");
}产出如下:
001 002 003 004 005 006 007 008 009 010 011
我的问题是:如何用填充空格而不是前导零生成数字?
1 2 3 4 5 6 7 8 9 10 11
注意:我知道在StackOverflow中实现了几个问题,要求在字符串中填充空格。我知道怎么用绳子做这件事。我想问的是,是否可以用填充空间格式化数字?
发布于 2014-03-20 17:47:07
for (int y=1; y<12; y++)
{
System.out.print(String.format("%1$4s", y));
}它将打印长度为4的字符串,所以如果y=1打印3个空格和1,“1",如果y是10,它将打印2个空格和10,”10"。
见javadocs
发布于 2014-03-20 17:53:36
int i = 0;
while (i < 12) {
System.out.printf("%4d", i);
++i;
}4是宽度。您还可以用格式替换printf。
https://stackoverflow.com/questions/22541056
复制相似问题