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

标签 java

我有这个方法:

public long getLastSequenceNumber();

它应该返回我:

  1. 0
  2. 一个应该类似于 34,60,103...的数字...
  3. 12 位数字的最大数量(例如 243265438564)。

我想要的是,当我得到这个数字时,我想将其转换为字符串,并添加数字前面缺少的“0”以获得 12 位数字。如果它是 12 位数字,则只需转换为字符串即可。

示例:

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

我怎样才能用Java做到这一点?

最佳答案

您可以使用 DecimalFormat将数字直接转换为字符串

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

或者,您可以调用 String.format0 to indicate leading zeros and a 12 for the length .

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

关于java - 如何在将转换为字符串的长变量中添加数字?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30197394/

相关文章:

java - 在 Java 中使用 "sincos"

java - 当我在 java swing 中单击 JDatePicker 中的其他位置时,如何关闭弹出 DatePicker?

java - 尝试读取文本文件时出现 IO 异常错误

java - Java 中 JSON 的 pretty-print 在控制台上工作正常,但在浏览器中不起作用

java - 通过 FTP 进行 Azure Java 部署而不解压

Java添加删除集合的方法

java - 效率问题

Java:如何在不使用 Paint() 的情况下从 Canvas 拍摄快照 (BufferedImage)?

java - 使用多个定界符Java分割字符串

java - 我的世界如何自动保存并同时继续处理游戏?