Warum ergibt die Subtraktion von Epochen-Millisekunden (Jahr 1927) ein seltsames Ergebnis?
Hallo zusammen! Ich bin ein Java-Neuling und bin auf ein sehr seltsames Problem bei der Arbeit mit Daten gestoßen. Ich versuche, die Differenz in Millisekunden zwischen zwei Zeitpunkten im Jahr 1927 zu berechnen, aber das Ergebnis ist nicht wie erwartet.\n\nHier ist mein Code:\n\n```java\nimport java.text.SimpleDateFormat;\nimport java.util.Date;\nimport java.util.TimeZone;\n\npublic class StrangeDate {\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 // Datum 1: 1927-12-31 23:54:07\n Date date1 = sdf.parse("1927-12-31 23:54:07");\n // Datum 2: 1927-12-31 23:54:08\n Date date2 = sdf.parse("1927-12-31 23:54:08");\n\n long diff = date2.get