1

obj.date是一个 unix 时间戳(长)。我检查了日期是否正确,但我无法获得两个日期对象之间的分钟差。例如,当我期望接近 30 时,我得到 4。这是为什么呢?

Date now = new Date();
Date then = new Date((long)obj.date*1000);

int secondsbetweendates = (int) ((then.getTime()-now.getTime())/1000);

int minutesbetweendates = (secondsbetweendates/1000) % 60;
4

1 回答 1

3

要将秒转换为分钟,您可以除以 60:

int minutesbetweendates = secondsbetweendates / 60;

请注意,这将返回一个整数并截断结果,这意味着只会计算完整的分钟数。换句话说,119 秒将变成 1 分钟,而不是 2。

您还应该知道,如果时差超过一小时,它也可以返回大于 60 的数字。

于 2012-12-02T18:14:04.577 回答