我正在尝试在卡萨布兰卡时区构建一个日期(2014年7月29日凌晨02:55:08),但出现了以下异常:
"main"线程中的异常,java.lang.IllegalArgumentException: HOUR_OF_DAY: 2->3 在java.util.GregorianCalendar.computeTime(Unknown Source)
"main"线程中的异常,java.lang.IllegalArgumentException: HOUR_OF_DAY: 2->3 在java.util.GregorianCalendar.computeTime(Unknown Source)
Calendar cal = GregorianCalendar.getInstance(TimeZone.getTimeZone("Africa/Casablanca"));
cal.setLenient(false);
cal.set(Calendar.DATE, 29);
cal.set(Calendar.MONTH, 6); // July
cal.set(Calendar.YEAR, 2014);
cal.set(Calendar.HOUR_OF_DAY, 2);
cal.set(Calendar.MINUTE, 55);
cal.set(Calendar.SECOND, 8);
cal.getTime();
在jre 1.7.0_71和1.8.0_20中会抛出异常,但在1.6.0_30中不会。
据我所知,在那个特定的时间没有进行夏令时更改。有什么想法吗?
谢谢!