Tage zwischen zwei Daten mit Java berechnen
Die Bestimmung der Differenz zwischen zwei Daten ist eine häufige Programmieraufgabe. Java bietet mehrere Klassen und Methoden, um diesen Prozess zu vereinfachen, einschließlich der Handhabung von Schaltjahren und Sommerzeit.
Berechnen von Tagen mithilfe der Java 8-Zeit-API
Java 8 führte das neue Java ein. time-Paket, das eine modernere und benutzerfreundlichere API für die Arbeit mit Datums- und Uhrzeitangaben bereitstellt. Um die Tage zwischen Datumsangaben mit Java 8 zu berechnen, führen Sie die folgenden Schritte aus:
Beispiel:
DateTimeFormatter dtf = DateTimeFormatter.ofPattern("dd MM yyyy"); String inputString1 = "23 01 1997"; String inputString2 = "27 04 1997"; try { LocalDateTime date1 = LocalDate.parse(inputString1, dtf); LocalDateTime date2 = LocalDate.parse(inputString2, dtf); long daysBetween = Duration.between(date1, date2).toDays(); System.out.println("Days: " + daysBetween); } catch (ParseException e) { e.printStackTrace(); }
Kalendertage berechnen
Beachten Sie, dass die Der obige Ansatz zählt Tage als generische 24-Stunden-Blöcke, nicht als Kalendertage. Verwenden Sie für Kalendertage java.time.temporal.ChronoUnit.DAYS und die Methode between().
long daysBetween = ChronoUnit.DAYS.between(date1, date2);
Umgang mit Schaltjahren und Sommerzeit
Sowohl Java 8-Zeit-API und die in der ursprünglichen Antwort bereitgestellte SimpleDateFormat-Klasse verarbeiten automatisch Schaltjahre und Sommerzeit Anpassungen.
Konvertieren von Zeichenfolgen in Datumsangaben
Vermeiden Sie unnötige Konvertierungen von Zeichenfolgen in Datumsangaben und zurück. SimpleDateFormat ist ein leistungsstarkes Tool, das jedoch jedes Datum unnötigerweise zweimal analysiert und formatiert. Es ist effizienter, die Methode LocalDateTime.parse() direkt zu verwenden.
Das obige ist der detaillierte Inhalt vonWie kann Java die Anzahl der Tage zwischen zwei Daten effizient berechnen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!