首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在Java中用前导空格格式化数字

如何在Java中用前导空格格式化数字
EN

Stack Overflow用户
提问于 2014-03-20 17:42:39
回答 2查看 34.6K关注 0票数 17

我有下面的Java代码来生成零填充的数字。

代码语言:javascript
复制
    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中实现了几个问题,要求在字符串中填充空格。我知道怎么用绳子做这件事。我想问的是,是否可以用填充空间格式化数字

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-03-20 17:47:07

代码语言:javascript
复制
    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

票数 29
EN

Stack Overflow用户

发布于 2014-03-20 17:53:36

代码语言:javascript
复制
int i = 0;
while (i < 12) {
    System.out.printf("%4d", i);
    ++i;
}

4是宽度。您还可以用格式替换printf。

票数 15
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22541056

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档