为什么使用不同的日期格式会在同一日期产生不同的结

时间:2016-06-15 08:45:09

标签: java

我尝试在日期格式中使用当前日期,但是当我使用不同的日期格式时,这会产生不同的结果..首先我使用了这段代码:

private String getTodayDateString() {
    Calendar cal = Calendar.getInstance();
    int month=cal.get(Calendar.MONTH);
    return Integer.toString(month);
}

这个月给我5个结果。 但是当我使用这段代码时:

private String getTodayDateString2() {
    DateFormat dateFormat = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss");
    Calendar cal = Calendar.getInstance();
    return dateFormat.format(cal.getTime());
}

函数返回我14/6/2016,这意味着月份在这个dateformat.why中计算6?问题出在哪里?

1 个答案:

答案 0 :(得分:0)

月份的日历从0开始

0 = 1月

11 =十二月

如果您看到Calendar类的源代码,则会找到public final static int JANUARY = 0;

同样适用于12月public final static int DECEMBER = 11; 查看source code此处