Avatar ·

Warum ergibt die Subtraktion von zwei Millisekunden-Zeitstempeln (Jahr 1927) ein seltsames Ergebnis?

Hallo zusammen! Ich bin neu in Java und beschäftige mich mit Daten und Zeiten. Ich habe einen einfachen Code geschrieben, der die Differenz zwischen zwei Zeitpunkten in Millisekunden berechnet. Aber das Ergebnis hat mich einfach schockiert!\n\nHier ist mein Code:\n\n```java\nimport java.text.SimpleDateFormat;\nimport java.util.Date;\nimport java.util.TimeZone;\n\npublic class StrangeDateDifference {\n public static void main(String[] args) throws Exception {\n SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");\n sdf.setTimeZone(TimeZone.getTimeZone("Asia/Shanghai"));\n\n Date date1 = sdf.parse("1927-12-31 23:54:07");\n Date date2 = sdf.parse("1927-12-31 23:54:08");\n\n long diffInMillis = date2.getTime() - date1.getTime();\n System.out.println("Differenz in Millisekunden: " + diffInMillis);