我知道 Java 月份从 0 开始,我们必须为其添加 1 的偏移量,但是当我使用以下具有 CST 时区的代码时,我得到 2 月份的值为 6。
我正在尝试将月份转换为其等效的日历值,例如 1 表示 1 月,2 表示 2 月,依此类推。
Calendar cal = Calendar.getInstance();
cal.setTime(new SimpleDateFormat("MMM").parse("FEB"));
int monthInt = cal.get(Calendar.MONTH) + 1;
System.out.println(monthInt);
但是当我在时区为印度标准时间(IST-GMT +5.30)的机器上运行它时,我得到的预期值为 2。
这里有什么问题?我是否需要在我的日历中包含任何语言环境。使用上面的代码,几个月来我得到完全没有意义的值。