为什么在使用java日历解析时出错了月份 [英] why do I get wrong month when parsing with java calendar
本文介绍了为什么在使用java日历解析时出错了月份的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
Date fakeDate = sdf.parse("15/07/2013 11:00 AM");
Calendar calendar = Calendar.getInstance()
calendar.setTime(fakeDate);
int currentMonth = calendar.get(Calendar.MONTH);
我得到currentMonth == 6而不是7。
I get currentMonth == 6 instead of 7.
为什么会这样?
推荐答案
因为 Calendar.MONTH
是基于ZERO。 为什么?
Because Calendar.MONTH
is ZERO based. Why?
检查 docs :(总是)
get和set的字段编号,表示月份。这是一个
特定于日历的值。 格里高利
和Julian日历中的第一个月是1月1日;最后一个取决于一年中
的月数。
Field number for get and set indicating the month. This is a calendar-specific value. The first month of the year in the Gregorian and Julian calendars is JANUARY which is 0; the last depends on the number of months in a year.
这篇关于为什么在使用java日历解析时出错了月份的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文