有没有办法在 Java 中使用 TimeStamp 始终获取两位数的值?

is there a way to get always 2-digits values with TimeStamp in Java?

假设我有几个 TimeStamp 对象,我想知道其中两个对象在分钟和秒方面的区别。

TimeStamp timestamp1 = new TimeStamp(System.currentTimeMillis());
TimeStamp timestamp2 = new TimeStamp(System.currentTimeMillis());

如果我使用方法 getSeconds(但这个概念也可以适应分钟和小时),例如,预期输出是“SS”。

但是当我试图找出两个对象之间的区别时(类似于:

long differenceInSeconds = (timestamp1.getseconds() - timestamp2.getSeconds());

现在预期的输出只是 2 个数字之间的差值,所以很明显它可以是 0、5、13,...

如果我希望值始终采用 XX 格式怎么办? 0 将是 00,13 将是 13 并继续。

也许有一些 class 或方法,关于我不知道的时间戳?

我觉得之所以没有填充,是因为方法returns是一个int值,默认是不填充的。获得填充值的唯一方法是将您的数字转换为字符串,然后添加前导零。

你想要的可以通过以下方式实现

long differenceInSeconds = (timestamp1.getseconds() - timestamp2.getSeconds());
String.format("%02d", differenceInSeconds)

标志%02d表示如果传递的数字小于2位数字,它将把它转换成2位数字的字符串。所以如果你传递 5 它将被转换为字符串 05。如果你超过 13,它将保持 13。