Java日期开始纪元

标签 java java.util.date

java.util.Date 类基于自 1970 年 1 月 1 日 00:00 GMT 以来的秒数。那么为什么这段代码

System.out.println(new Date(0));

打印 1970 年 1 月 1 日星期四 01:00:00 GMT?我的本地时区是 GMT,所以我希望它打印 00:00:00 GMT。

最佳答案

这有一个有趣的原因。请参阅(BST Offset 错误报告) . 它说,“以及从 1968 年到 1972 年使用英国标准时间进行的实验,在这一年中时间比格林威治标准时间提前了一个小时。”进一步说:“Date.toString() 生成的本地时间在历史上是正确的,除了时区缩写。它应该是“BST”(本例中的英国标准时间),但这是当前 TimeZone 实现的已知限制。”

关于Java日期开始纪元,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48945611/

相关文章:

java - 替代 long 以避免斐波那契数列溢出

java - 如何更改 netbeans 中不可编辑/生成的代码

java.lang.IllegalThreadStateException : Thread already started 异常

java - 阻止 Android Studio 自动导入 java.sql.Date

tsql - Groovy(Java)在TransactSQL数据库(Microsoft SQL Server 2008 R2)中的存储时间以毫秒为单位

java - 更新了 eclipse、adt、Libgdx 无法在 android 上编译

java - 如何将一个xml导入到另一个xml中?

Java 日期早于 1923 年

java - 将日期从 GMT 时区转换为本地时区——使用 ISO_OFFSET_DATE_TIME

java - 如何将日期字符串与当前日期进行比较?