6

我想检查给定的 DateTime 是在凌晨 4 点到早上 8 点之间还是在凌晨 12 点到凌晨 3 点之间。这样做的正确方法是什么?

这似乎可以解决问题:

        DateTime start  = new DateTime().withHourOfDay(4);
        DateTime end  = new DateTime().withHourOfDay(8);
        Interval interval = new Interval(start, end);
        if(interval.contains(now)) return true;

有没有更好的办法?

4

1 回答 1

10

只需使用getHourOfDay()

int hour = new DateTime().getHourOfDay();
return ((hour >= 16) && (hour < 20))    //4-8pm
        || ((hour >= 0) && (hour < 3)); //12-3am
于 2012-05-15T17:38:48.433 回答