Format an Integer using Java String Format

前端 未结 3 1928
小鲜肉
小鲜肉 2020-12-07 17:01

I am wondering if it is possible, using the String.format method in Java, to give an integer preceding zeros?

For example:

1 would become 001
2 would be

相关标签:
3条回答
  • 2020-12-07 17:36

    If you are using a third party library called apache commons-lang, the following solution can be useful:

    Use StringUtils class of apache commons-lang :

    int i = 5;
    StringUtils.leftPad(String.valueOf(i), 3, "0"); // --> "005"
    

    As StringUtils.leftPad() is faster than String.format()

    0 讨论(0)
  • 2020-12-07 17:41
    String.format("%03d", 1)  // => "001"
    //              │││   └── print the number one
    //              ││└────── ... as a decimal integer
    //              │└─────── ... minimum of 3 characters wide
    //              └──────── ... pad with zeroes instead of spaces
    

    See java.util.Formatter for more information.

    0 讨论(0)
  • 2020-12-07 17:53

    Use %03d in the format specifier for the integer. The 0 means that the number will be zero-filled if it is less than three (in this case) digits.

    See the Formatter docs for other modifiers.

    0 讨论(0)
提交回复
热议问题