時間部分を除いた日付の比較
日付を比較する場合、その日だけに焦点を当てるために時間部分を無視する必要がある場合があります。月と年。これは通常、2 つのイベントが同じ日に発生したかどうかを判断するなどのシナリオで行われます。時刻を使用せずに日付比較を実装する方法は次のとおりです。
Joda Time の使用
Joda Time は、日付の操作と比較に便利なソリューションを提供します。時刻を使用せずに日付を比較するには:
DateTime first = ...; DateTime second = ...; LocalDate firstDate = first.toLocalDate(); LocalDate secondDate = second.toLocalDate(); return firstDate.compareTo(secondDate);
または、DateTimeComparator を使用します:
return DateTimeComparator.getDateOnlyInstance().compare(first, second);
Java 組み込み API (カレンダー) を使用する
Joda Time が利用できない場合は、Java 組み込みカレンダーを使用してくださいAPI:
Calendar firstDate = Calendar.getInstance(); Calendar secondDate = Calendar.getInstance(); firstDate.setTime(first); secondDate.setTime(second); firstDate.set(Calendar.HOUR_OF_DAY, 0); firstDate.set(Calendar.MINUTE, 0); firstDate.set(Calendar.SECOND, 0); firstDate.set(Calendar.MILLISECOND, 0); secondDate.set(Calendar.HOUR_OF_DAY, 0); secondDate.set(Calendar.MINUTE, 0); secondDate.set(Calendar.SECOND, 0); secondDate.set(Calendar.MILLISECOND, 0); return firstDate.compareTo(secondDate);
Android 開発者向けクイック リファレンス
Joda Time 依存関係の追加:
dependencies { ... implementation 'joda-time:joda-time:2.9.9' }
コード例:
DateTimeComparator dateTimeComparator = DateTimeComparator.getDateOnlyInstance(); Date myDateOne = ...; Date myDateTwo = ...; int retVal = dateTimeComparator.compare(myDateOne, myDateTwo);
以上が時刻部分を除いて日付を比較するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。