Java Date奇怪的行为

Jev*_*nov -2 java date

我有非常奇怪的Java Date类行为:

    System.out.println(new Date().toGMTString());
    long l = 1332452310L;
    Date d = new Date(l);
    System.out.println(d.toGMTString());
Run Code Online (Sandbox Code Playgroud)

给我

22 Mar 2012 22:00:42 GMT
16 Jan 1970 10:07:32 GMT
Run Code Online (Sandbox Code Playgroud)

为什么会这样?

Chr*_*ite 9

你的long l是以秒为单位的时间,你需要以毫秒为单位的时间:

long l = 1332452310L * 1000L;
Run Code Online (Sandbox Code Playgroud)