为什么我在用 java 日历解析时会得到错误的月份

时间:2023-02-21
本文介绍了为什么我在用 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 是从零开始的.为什么?

Because Calendar.MONTH is ZERO based. Why?

查看文档:(总是)

get 和 set 的字段编号,表示月份.这是一个特定于日历的值.公历一年的第一个月儒略历是 JANUARY,即 0;最后取决于一年中的月数.

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 日历解析时会得到错误的月份的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持跟版网!

上一篇:Java 日历日期错误 下一篇:在 Java 中将 EST 转换为 EDT 或反之亦然

相关文章

最新文章