Heim > Java > javaLernprogramm > Hauptteil

Wie vergleiche ich Daten in Java ohne Zeit?

Linda Hamilton
Freigeben: 2024-11-09 08:16:02
Original
518 Leute haben es durchsucht

How to Compare Dates in Java Excluding Time?

Datumsvergleich ohne Zeit: Eine Erkundung mit Joda-Zeit

In Java repräsentiert das java.util.Date-Objekt sowohl Datum als auch Uhrzeit. Beim Vergleich von Daten ist es oft wünschenswert, den Zeitanteil zu ignorieren und sich ausschließlich auf das Datum selbst zu konzentrieren.

Joda Time: Eine vereinfachte Lösung

Joda Time, eine renommierte Bibliothek für zeitliche Berechnungen bietet eine elegante Lösung. Es stellt die Methode toLocalDate() bereit, die Datumsinformationen aus einem DateTime-Objekt extrahiert und dabei die Zeitattribute verwirft.

DateTime first = ...;
DateTime second = ...;

LocalDate firstDate = first.toLocalDate();
LocalDate secondDate = second.toLocalDate();

return firstDate.compareTo(secondDate);
Nach dem Login kopieren

Alternativ können Sie die Methode DateTimeComparator.getDateOnlyInstance() verwenden, die den Vergleichsprozess vereinfacht:

return DateTimeComparator.getDateOnlyInstance().compare(first, second);
Nach dem Login kopieren

Integrierte API-Alternative

Wenn Joda Time keine Option ist, können Sie eine Kalenderinstanz manuell so anpassen, dass sie nur das Datum darstellt und die Stunde eliminiert. Minuten-, Sekunden- und Millisekundenfelder.

Calendar firstCalendar = Calendar.getInstance();
Calendar secondCalendar = Calendar.getInstance();

firstCalendar.set(Calendar.HOUR_OF_DAY, 0);
firstCalendar.set(Calendar.MINUTE, 0);
firstCalendar.set(Calendar.SECOND, 0);
firstCalendar.set(Calendar.MILLISECOND, 0);

secondCalendar.set(Calendar.HOUR_OF_DAY, 0);
secondCalendar.set(Calendar.MINUTE, 0);
secondCalendar.set(Calendar.SECOND, 0);
secondCalendar.set(Calendar.MILLISECOND, 0);

return firstCalendar.compareTo(secondCalendar);
Nach dem Login kopieren

Beachten Sie jedoch, dass diese Methode im Vergleich zum Joda-Time-Ansatz umständlicher und weniger robust ist.

Das obige ist der detaillierte Inhalt vonWie vergleiche ich Daten in Java ohne Zeit?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage