Calendar.getTimeInMillis()为同一实例返回不同的结果

时间:2013-04-25 17:13:58

标签: java

我有以下代码并在Calendar实例上调用getTimeInMillis()。我希望返回值相同,但它会在运行之间返回不同的结果。

结果如下所示,这是不同的。我做错了什么,需要改变什么?

时间1369454400208 时间1369454400185 时间1369454400926

public class MyTest {

public static void main(String[] args){

    Calendar calendar = new GregorianCalendar();

    calendar.set(calendar.YEAR, 2013);
    calendar.set(calendar.MONTH, 4);
    calendar.set(calendar.DATE, 24);
    calendar.set(calendar.HOUR, 12);
    calendar.set(calendar.MINUTE, 00);
    calendar.set(calendar.SECOND, 00);      

    System.out.print("Time " + calendar.getTimeInMillis());

}

1 个答案:

答案 0 :(得分:13)

您还需要重置毫秒数。

calendar.set(Calendar.MILLISECOND, 0);

请注意,您应使用Calendar.*来访问静态字段,而不是calendar.*