如何透過忽略時間來比較日期
java.util.Date 類別包含一個時間組件,這會使日期之間的比較變得複雜。要忽略時間部分,請考慮以下方法:
使用 Joda Time Library:
Joda Time提供了一個方便的解決方案:
DateTime first = ...; DateTime second = ...; LocalDate firstDate = first.toLocalDate(); LocalDate secondDate = second.toLocalDate(); return firstDate.compareTo(secondDate);
或者,為了更簡單:
return DateTimeComparator.getDateOnlyInstance().compare(first, second);
使用日曆(不太推薦):
如果Joda Time 不可用,您可以建立指定日期和時區的日曆實例並手動清除時間欄位:
Calendar firstCalendar = Calendar.getInstance(); firstCalendar.setTime(first); firstCalendar.set(Calendar.HOUR_OF_DAY, 0); firstCalendar.set(Calendar.MINUTE, 0); firstCalendar.set(Calendar.SECOND, 0); firstCalendar.set(Calendar.MILLISECOND, 0); Calendar secondCalendar = ... // Do the same for second date return firstCalendar.compareTo(secondCalendar);
以上是如何在 Java 中忽略時間來比較日期?的詳細內容。更多資訊請關注PHP中文網其他相關文章!