有没有一种方法可以在Java中使用TimeStamp始终获得2位数的值



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

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

例如,如果我使用getSeconds方法(但这个概念也可以适用于分钟和小时(,那么预期的输出是"秒";SS";。

但当我试图获得这两个对象之间的差异时(类似于:

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

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

如果我想始终使用XX格式的值,该怎么办?0将是00,13将是13并且继续。

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

我认为不填充它的原因是因为Method返回一个int值,默认情况下不填充。获得填充值的唯一方法是将数字转换为字符串,然后添加前导零。

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

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

标志%02d意味着如果传递的数字小于2位,它将把它转换成2位字符串。因此,如果您传递5,它将被转换为字符串05。如果你通过13,它将保持13。

最新更新