Daten ohne den Zeitanteil vergleichen
Beim Vergleich von Daten kann es notwendig sein, den Zeitanteil zu ignorieren, um sich ausschließlich auf den Tag zu konzentrieren. Monat und Jahr. Dies wird häufig in Szenarien durchgeführt, z. B. bei der Feststellung, ob zwei Ereignisse am selben Tag auftreten. So implementieren Sie einen Datumsvergleich ohne Uhrzeit:
Joda Time verwenden
Joda Time bietet eine praktische Lösung für die Datumsmanipulation und den Datumsvergleich. So vergleichen Sie Datumsangaben ohne Uhrzeit:
DateTime first = ...; DateTime second = ...; LocalDate firstDate = first.toLocalDate(); LocalDate secondDate = second.toLocalDate(); return firstDate.compareTo(secondDate);
Alternativ können Sie DateTimeComparator verwenden:
return DateTimeComparator.getDateOnlyInstance().compare(first, second);
Verwenden der integrierten Java-API (Kalender)
Wenn Joda Time nicht verfügbar ist, verwenden Sie die in Java integrierte Kalender-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);
Kurzreferenz für Android-Entwickler
Fügen Sie die Joda Time-Abhängigkeit hinzu:
dependencies { ... implementation 'joda-time:joda-time:2.9.9' }
Codebeispiel:
DateTimeComparator dateTimeComparator = DateTimeComparator.getDateOnlyInstance(); Date myDateOne = ...; Date myDateTwo = ...; int retVal = dateTimeComparator.compare(myDateOne, myDateTwo);
Das obige ist der detaillierte Inhalt vonWie vergleiche ich Daten ohne den Zeitanteil?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!