Video: Verknüpfung Excel und Word Aktualisierung der Daten Tutorial Teil 1 - carinko.com 2024
Ebenso wie Sie die integrierten Java-Vergleichsoperatoren nicht mit Datumsangaben verwenden können, dürfen Sie auch keine integrierten mathematischen Operatoren verwenden. Stattdessen können Sie mit den verschiedenen Methoden
plus
und
minus
Addition und Subtraktion an Daten durchführen und die Differenz zwischen zwei Datumsangaben mithilfe der
bis
-Methode ermitteln…
Eine wichtige Tatsache, die bei Datums- und Zeitberechnungen zu beachten ist, ist, dass Date-Time-Objekte unveränderlich sind. Das heißt, wenn Sie ein Date-Time-Objekt erstellen, können Sie seinen Wert nicht mehr ändern. Wenn Sie eine Berechnung für ein Date-Time-Objekt durchführen, ist das Ergebnis ein neues Date-Time-Objekt mit einem neuen Wert.
Mit den Methoden
plus
und
minus
können Sie einem Date-Time-Objekt verschiedene Datums- und Zeiteinheiten hinzufügen. Für die
LocalDate
-Klasse gibt es jeweils vier Varianten, mit denen Sie einem
LocalDate
-Objekt Jahre, Monate, Wochen und Tage hinzufügen oder subtrahieren können. Der folgende Code gibt das aktuelle Datum, das morgige Datum und das Datum eine Woche, einen Monat und ein Jahr später aus:
System. aus. println ("Heute:" + LocalDate. Jetzt ());
System. aus. println ("Morgen:" + LocalDate. Jetzt (). plusDays (1));
System. aus. println ("Nächste Woche:" + LocalDate. Jetzt (). plusWeeks (1));
System. aus. println ("Nächster Monat:" + LocalDate. Jetzt (). plusMonths (1));
System. aus. println ("Nächstes Jahr:" + LocalDate. now (). plusYears (1));
Verwenden Sie die Methode
bis
, um die Differenz zwischen zwei Datumsangaben zu ermitteln. Es berechnet die Differenz zwischen einem Datum und dem als erster Parameter übergebenen Datum, gemessen in den vom zweiten Parameter angegebenen Einheiten. Der folgende Code bestimmt beispielsweise die Anzahl der Tage zwischen dem 16. Mai 2014 und dem 15. Dezember 2014:
LocalDate date1 = Lokales Datum. parsen ("2014-05-16");
LocalDate date2 = Lokales Datum. parsen ("2014-12-15");
System. aus. println (Datum1. bis (Datum2, ChronoUnit. DAYS));
Einige Datumsberechnungen können etwas komplexer sein. Betrachten Sie beispielsweise ein Unternehmen, das am 15. eines jeden Monats Rechnungen erstellt. Das folgende Code-Snippet zeigt die Anzahl der Tage vom aktuellen Datum bis zum nächsten Rechnungsdatum an:
LocalDate today = LocalDate. jetzt();
LocalDate invDate = Lokales Datum. von (heute. getYear (),
heute. getMonthValue (), 15);
if (heute. GetDayOfMonth ()> 15)
invDate = invDate. plusMonate (1);
lange TageToInvoice = heute. bis (invDate,
ChronoUnit. TAGE);
System. aus. println (daysToInvoice
+ "bis zum nächsten Rechnungsdatum.");
In diesem Beispiel wird zuerst das aktuelle Datum abgerufen und dann ein neues
LocalDate
-Objekt erstellt, das den 15. des aktuellen Monats darstellt. Wenn der aktuelle Tag des Monats größer als 15 ist, wird der Fakturierungszeitpunkt um einen Monat verlängert. Mit anderen Worten, wenn es der 16. oder später ist, erfolgt die Fakturierung am 15. des Monats nach, nicht in diesem Monat. Dann verwendet es die Methode
bis
, um die Anzahl der Tage zwischen dem aktuellen Datum und dem nächsten Rechnungsdatum zu ermitteln.
ChronoUnit
ist eine Aufzählung, die die verschiedenen Zeiteinheiten definiert, die bei Datums- und Zeitberechnungen verwendet werden können. Die möglichen Werte sind:
JAHRHUNDERTE
TAGE
JAHRZEHNTE
ERAS
FÜR IMMER
HALBTAGE
STUNDEN
MICROS
MILLENNIA
MILLIS
MINUTES
MONATE
NANOS
SEKUNDEN
WOCHEN
JAHRE
Die meisten davon sind selbsterklärend, aber zwei davon sind etwas eigenartig:
-
ERA
gibt an, ob das Datum bezieht sich auf die gemeinsame Ära (CE, auch als AD bekannt) oder vor der Ära (BCE, auch bekannt als BC). -
FOREVER
stellt den größten Wert dar, der als Dauer dargestellt werden kann. Leider lässt dich Java nicht ewig leben. Der folgende Code löst eine Ausnahme aus:
LocalDate birthday = LocalDate. parse ("1959-05-16);
Geburtstag = Geburtstag. plus (1, ChronoUnit. FÜR IMMER);
Beachten Sie, dass sich
ChronoUni
t in der
-Java befindet. Zeit. temporales
-Paket. Achten Sie daher darauf, die folgende Anweisung am Anfang eines Programms einzufügen, das
ChronoUnit
verwendet:
java importieren. Zeit. zeitliche. *;