两分钟之间的差异

时间:2013-09-08 17:26:29

标签: java time

我已经看到一些使用Joda Time和其他方法的例子来计算两个日期之间的差异(以毫秒为单位),但是这些如何应用于在几分钟内得到两次之间的差异?例如,下午2:45到11:00之间的差异是225分钟。

3 个答案:

答案 0 :(得分:10)

你可以通过观察一分钟是六十秒,一秒是一千毫秒来计算出数学,所以一分钟是60*1000毫秒。

如果将毫秒除以60,000,则秒将被截断。您应该将数字除以1000以截断毫秒,然后将n % 60作为秒数,将n / 60作为分钟数:

Date d1 = ...
Date d2 = ...
long diffMs = d1.getTime() - d2.getTime();
long diffSec = diffMs / 1000;
long min = diffSec / 60;
long sec = diffSec % 60;
System.out.println("The difference is "+min+" minutes and "+sec+" seconds.");

答案 1 :(得分:4)

使用JodaTime,您可以执行以下操作以获取确切的分钟数

public static void main(String[] args) throws Exception {   //Read user input into the array
    long time = System.currentTimeMillis(); // current time
    DateTime time1 = new DateTime(time);
    DateTime time2 = new DateTime(time + 120_000); // add 2 minutes for example
    Minutes minutes = Minutes.minutesBetween(time1, time2);
    System.out.println(minutes.getMinutes()); // prints 2
}

Minutes.minutesBetween()接受ReadableInstant参数,该参数不一定是DateTime个对象。

答案 2 :(得分:1)

要将毫秒转换为分钟,请除以60000