Java 日历日期错误
谁能帮我理解为什么我得到不同的月份值
Can anyone please help me understand why I am getting different month values for
SimpleDateFormat dateFormat = new SimpleDateFormat("dd/MM/yyyy");
System.out.println(dateFormat.format(cal.getTime())
+ "--"
+ cal.get(Calendar.MONTH));
令人惊讶的显示
09/09/2012--8
推荐答案
在 Calendar
类,MONTH
从索引 0
开始.因此,January
为 0,February
为 1,因此 September
为 8.
In Calendar
class, MONTH
start from index 0
. So, January
is 0, February
is 1, and hence September
is 8.
PS:-确实这是Calendar
类中的Inconsistency
,所以我建议你看看Joda-Time API
打造您的生活处理日期时间数据时更容易.
P.S.: - That's true that this is an Inconsistency
in Calendar
class, so I would suggest you to take a look at Joda-Time API
to make your life easier while working with date-time data.
相关文章