Ich möchte den Unterschied zwischen 2 Daten mit unterschiedlichen Jahren in Sekunden berechnen. Ich mache es wie folgt aus:Unterschied zwischen zwei Daten mit unterschiedlichen Jahren
public static int dateDifference(Date d1, Date d2){
return (int) (d2.getTime() - d1.getTime());
}
Das Problem ist, dass, wenn ich das für diesen Zeitraum zum Beispiel laufen:
d1 = Tue Nov 17 14:18:20 GMT+01:00 2015
d2 = Fri Nov 28 15:37:50 GMT+02:00 2016
ich -169191300
als Ergebnis erhalten. Wenn die Jahre gleich sind, bekomme ich das richtige Ergebnis, 954959013
.
Kann jemand erklären, was hier passiert?
Ich empfehle, in java 8 nach [joda-time] (http://www.joda.org/joda-time/) oder 'java.time' zu suchen, um zeitbezogene Operationen durchzuführen. – Reactormonk