了解日历时间,需要澄清

时间:2012-11-08 15:39:54

标签: java date time calendar

考虑以下代码段

    System.out.println(System.currentTimeMillis());

    Calendar calendarInstance = Calendar.getInstance();
    System.out.println(calendarInstance.getTimeInMillis());

    // Get current
    int year = calendarInstance.get(Calendar.YEAR);
    int month = 1 + calendarInstance.get(Calendar.MONTH);

    calendarInstance.set(year, month, 7 , 19, 00);

    System.out.println(calendarInstance.getTimeInMillis());

前两张照片“几乎就是现在”。第三天是昨天晚上7点。为什么第三个数字最大?

  1. 1,352,389,069,723
  2. 1,352,389,069,734
  3. 1,354,669,249,734
  4. 如果我错了,请纠正我,但是

    calendarInstance.set(year, month, 7 , 19, 00);
    

    我们正在处理2012, 11, the 7th day, 7 pm

    我错过了什么?

1 个答案:

答案 0 :(得分:3)

您刚刚添加了1个月。所以这是未来。

int month = 1 + calendarInstance.get(Calendar.MONTH);

这可能令人困惑,但我想你添加1因为几个月是基于Java的0索引。不幸的是