如何检查2个日期之间的差异是否超过20分钟

2022-09-01 00:48:51

我在变量中有一个日期时间。现在我想检查以前的日期时间是否比当前时间早二十分钟以上。previous

Date previous = myobj.getPreviousDate();

Date now = new Date();

//check if previous was before 20 minutes from now ie now-previous >=20

我们该怎么做呢?


答案 1

if (now.getTime() - previous.getTime() >= 20*60*1000) {
    ...
}

或者,更详细,但可能稍微容易阅读:

import static java.util.concurrent.TimeUnit.*;

...

long MAX_DURATION = MILLISECONDS.convert(20, MINUTES);

long duration = now.getTime() - previous.getTime();

if (duration >= MAX_DURATION) {
    ...
}

答案 2

使用Joda时间

boolean result = Minutes.minutesBetween(new DateTime(previous), new DateTime())
                        .isGreaterThan(Minutes.minutes(20));