4

如果我不知道哪个对象早于另一个对象,那么判断一个 joda 时间 DateTime 对象是否在另一个对象的 4 小时内的最佳方法是什么?

如果我知道对象 A 在对象 B 之前,Joda Time Duration 对象似乎可以很好地完成这项工作,但是由于 Duration 已签名,如果我不知道顺序,它似乎不会做我想做的事。

似乎有一个简单的方法可以做到这一点,但我还没有找到它。

4

3 回答 3

9

只需为此使用Hours类:

Hours h = Hours.hoursBetween(date1, date2); 
int hours = h.getHours();
于 2009-09-28T22:05:10.223 回答
0

您可以对两个 DateTime 对象使用 compareTo() 方法来判断哪个更早,然后使用 Duration 查看它们是否在 4 小时内。

于 2009-09-28T21:56:29.007 回答
0

尝试以下操作:

if (Math.abs(new Duration(start, end).getStandardSeconds()) < 4 * 3600) {
  // blah blah blah
}
于 2009-09-28T22:02:46.983 回答