两分钟之间的差异
我已经看到一些使用Joda Time和其他方法的例子来计算两个日期之间的差异,以毫秒为单位,但是这些如何应用于在几分钟内得到两次之间的差异? 例如,下午2:45到11:00之间的差异是225分钟。
您可以通过观察一分钟是六十秒,一秒是一千毫秒来计算数学,所以一分钟是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.");
使用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
对象。
要将毫秒转换为分钟,除以60000
。