Einführung
In diesem Lab werden wir lernen, wie man die withDayOfYear()-Methode in der Java-Klasse LocalDate verwendet, um ein Datum mit einem neuen Tag des Jahres zu erstellen.
Erstelle eine Java-Datei
Erstellen Sie eine Datei LocalDateWithDayOfYear.java im Verzeichnis ~/project mit dem folgenden Code:
import java.time.LocalDate;
public class LocalDateWithDayOfYear {
public static void main(String[] args) {
System.out.println("Original datum: ");
LocalDate localDate = LocalDate.of(2002, 01, 10);
System.out.println(localDate);
}
}
Verwenden Sie den folgenden Befehl, um den Code zu kompilieren und auszuführen:
javac LocalDateWithDayOfYear.java && java LocalDateWithDayOfYear
Die Ausgabe sollte das ursprüngliche Datum anzeigen:
Original datum:
2002-01-10
Verwende withDayOfYear() zum Festlegen des neuen Tages im Jahr
Um ein neues Datum zu erstellen, indem wir einen neuen Wert für den Tag im Jahr festlegen, können wir die withDayOfYear()-Methode verwenden, um einen neuen Tag für das Datum festzulegen.
Fügen Sie den folgenden Code nach der Zeile System.out.println(localDate); hinzu:
// setze den Tag im Jahr auf 30
localDate = localDate.withDayOfYear(30);
System.out.println("Neues Datum mit Tag im Jahr 30: ");
System.out.println(localDate);
// setze den Tag im Jahr auf 300
localDate = localDate.withDayOfYear(300);
System.out.println("Neues Datum mit Tag im Jahr 300: ");
System.out.println(localDate);
Verwenden Sie den folgenden Befehl, um den Code zu kompilieren und auszuführen:
javac LocalDateWithDayOfYear.java && java LocalDateWithDayOfYear
Die Ausgabe sollte die neuen Daten mit den neuen Werten für den Tag im Jahr anzeigen:
Original datum:
2002-01-10
Neues Datum mit Tag im Jahr 30:
2002-01-30
Neues Datum mit Tag im Jahr 300:
2002-10-27
Umgang mit ungültigem Datum
Wenn das resultierende Datum ungültig ist, wird eine Ausnahme geworfen. Wir können die Ausnahme mit einem try-catch-Block wie folgt behandeln:
try {
// setze den Tag im Jahr auf 366 (ungültig für ein Nicht-Schaltjahr)
localDate = localDate.withDayOfYear(366);
System.out.println(localDate);
} catch (Exception e) {
System.out.println("Ungültiges Datum: " + e.getMessage());
}
Verwenden Sie den folgenden Befehl, um den Code zu kompilieren und auszuführen:
javac LocalDateWithDayOfYear.java && java LocalDateWithDayOfYear
Die Ausgabe sollte die Meldung der ungültigen Datumsausnahme anzeigen:
Original datum:
2002-01-10
Neues Datum mit Tag im Jahr 30:
2002-01-30
Neues Datum mit Tag im Jahr 300:
2002-10-27
Ungültiges Datum: Ungültiges Datum 'Tag im Jahr 366', da '2002' kein Schaltjahr ist
Zusammenfassung
In diesem Lab haben wir gelernt, wie man die withDayOfYear()-Methode in der Java-Klasse LocalDate verwendet, um ein Datum mit einem neuen Tag des Jahres zu erstellen. Wir haben auch gelernt, wie man die Ausnahme bei der Festlegung eines neuen Tages des Jahres behandelt, wenn das Datum ungültig ist.



