時間を無視して日付を比較する方法
java.util.Date クラスには、日付間の比較が複雑になる可能性がある時間コンポーネントが含まれています。時間部分を無視するには、次のアプローチを検討してください:
Joda Time ライブラリの使用:
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 中国語 Web サイトの他の関連記事を参照してください。