2

我有以下代码并在 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());

}
4

1 回答 1

13

您还需要重置毫秒。

calendar.set(Calendar.MILLISECOND, 0);

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

于 2013-04-25T17:15:42.233 回答