【发布时间】:2012-08-07 10:58:55
【问题描述】:
有没有办法比较两个日历对象,但忽略毫秒?
我写了一个比较两个日历对象的测试用例,但是有一个问题。尽管所有天、月、分钟和小时都匹配,但毫秒不匹配。我在得到实际日期之前得到了预期日期:
/**
* @return
*/
private Calendar getExpectedOneMonthDateFromCurrentDate() {
Calendar expectedOneMonth = Calendar.getInstance();
expectedOneMonth.add(Calendar.MONTH, -1);
return expectedOneMonth;
}
assertEquals(getExpectedOneMonthDateFromCurrentDate(),
DateRange.LAST_ONE_MONTH.getToDate());
【问题讨论】:
-
为什么不在检查时将毫秒设置为 0?您也可能只获得日期的长值,四舍五入到 1000 秒并进行比较。顺便说一句,您可能会考虑使用 Joda Time 来获得更简单、更一致的时间 API(类似的 API 将成为 Java 8 的一部分)
-
检查此链接,它可能会有所帮助stackoverflow.com/questions/1671001/…
-
我以前用过joda time,相信你我希望我能用它