如何在将转换为字符串的长变量中添加数字?

时间:2015-05-12 17:11:52

标签: java

我有这个方法:

public long getLastSequenceNumber();

它应该归还我:

  1. 0
  2. 一个应该像34,60,103 ......
  3. 的数字
  4. 最大12位数字(例如243265438564)。
  5. 我想要的是当我得到这个数字时我想将它转换为字符串并添加数字前面缺少的“0”以获得12位数字。如果它有12位数字,那么只需转换为字符串。

    示例:

    1. 如果我得到45则转换为“000000000045”。
    2. 如果我得到0则转换为“000000000000”。
    3. 如果我得到834213238956l(12位数),那么只需转换为 “834213238956”(相同的数字,但在字符串中)。
    4. 我如何用Java做到这一点?

1 个答案:

答案 0 :(得分:3)

您可以使用DecimalFormat将号码直接转换为String

DecimalFormat df = new DecimalFormat("000000000000"); // 12 zeros
String s = df.format(x);
String fortyFive = df.format(45);

或者,您可以使用String.format致电0 to indicate leading zeros and a 12 for the length

String s = String.format("%012d", x);
String fortyFive = String.format("%012d", 45);