为什么新的日期(0L)不会返回零日期

Ale*_*bot 5 java datetime

Date date = new Date(0L);
Run Code Online (Sandbox Code Playgroud)

它不应该给我一个零日期吗?像00/00/0000?给我12月31日星期三19:00:00美国东部时间1969年

Ste*_*end 26

根据javadocs,此构造函数Date使用从基线时间开始的偏移量:

分配Date对象并将其初始化以表示自标准基准时间(称为"epoch")以来的指定毫秒数,即1970年1月1日00:00:00 GMT.

大概是你在EST,因此结果.

顺便Date说一句,我不希望你注意到的结果是由任何可以想象的操作产生的,因为那甚至不是一个有效的日期(月和日= 0).


Fis*_*rdo 5

从Java API:

日期(长日期):分配Date对象并初始化它以表示自标准基准时间(称为"epoch")以来的指定毫秒数,即1970年1月1日00:00:00 GMT.

请参阅:http://download.oracle.com/javase/1.4.2/docs/api/java/util/Date.html