Java使用Calender设置月份时出错,原因在于Calendar的“月份”是从0开始的
见下面的代码
public class Test {
public static void main(String[] args) {
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
// 输出2011-12-23 12:01:00
Calendar calender1 = new GregorianCalendar(2011, 11, 23, 12, 1, 0);
System.out.println(format.format(calender1.getTime()));
// 输出2012-01-23 12:01:00
Calendar calender2 = new GregorianCalendar(2011, 12, 23, 12, 1, 0);
System.out.println(format.format(calender2.getTime()));
}
}
这个设计很让人无语......