In diesem Programm lernen Sie, mithilfe von Kalender zwei Daten in Java hinzuzufügen.
Um dieses Beispiel zu verstehen, sollten Sie die folgenden Java-Programmierthemen kennen:
- Java-Klasse und Objekte
- Java Basic Input und Output
Da die Java-Epoche 1970 ist, Date
funktioniert die in einem Objekt dargestellte Zeit nicht. Dies bedeutet, dass Ihre Daten ab 1970 beginnen und wenn zwei Date
Objekte hinzugefügt werden, fehlt die Summe um etwa 1970 Jahre. Also verwenden wir Calendar
stattdessen.
Beispiel: Java-Programm zum Hinzufügen von zwei Daten
import java.util.Calendar; public class AddDates ( public static void main(String() args) ( Calendar c1 = Calendar.getInstance(); Calendar c2 = Calendar.getInstance(); Calendar cTotal = (Calendar) c1.clone(); cTotal.add(Calendar.YEAR, c2.get(Calendar.YEAR)); cTotal.add(Calendar.MONTH, c2.get(Calendar.MONTH) + 1); // Zero-based months cTotal.add(Calendar.DATE, c2.get(Calendar.DATE)); cTotal.add(Calendar.HOUR_OF_DAY, c2.get(Calendar.HOUR_OF_DAY)); cTotal.add(Calendar.MINUTE, c2.get(Calendar.MINUTE)); cTotal.add(Calendar.SECOND, c2.get(Calendar.SECOND)); cTotal.add(Calendar.MILLISECOND, c2.get(Calendar.MILLISECOND)); System.out.format("%s + %s = %s", c1.getTime(), c2.getTime(), cTotal.getTime()); ) )
Ausgabe
Di Aug 08 10:20:56 NPT 2017 + Di Aug 08 10:20:56 NPT 2017 = Mo Apr 16 20:41:53 NPT 4035
Im obigen Programm speichern c1 und c2 das aktuelle Datum. Dann klonen wir einfach c1 und fügen die DateTime-Eigenschaften von c2 nacheinander hinzu.
Wie Sie sehen können, haben wir den Monaten 1 hinzugefügt. Dies liegt daran, dass Monate in Java mit 0 beginnen.
Alternativ können Sie Joda auch für Zeit- / Datumsoperationen in Java verwenden.