android日历问题:在日历的月份中+1

我正在用下边的代码

Calendar cal = Calendar.getInstance();
System.out.println("Before "+cal.getTime());
cal.set(Calendar.MONTH, 01);
System.out.println("After "+cal.getTime());

输出是:

Before Thu Jan 31 10:07:34 IST 2013
After Sun Mar 03 10:07:34 IST 2013

在1月+1的时候给出的是3月,如果我加的是30天可能返回的输出结果就是正确的了。但是我想要显示的是2月,有人能帮帮我么?

我解决这个问题了

用这个代码

Calendar cal = Calendar.getInstance();
System.out.println("Before "+cal.getTime());  //Before Thu Jan 31 10:16:23 IST 2013

cal.add(Calendar.MONTH, 1);
System.out.println("After "+cal.getTime()); //After Thu Feb 28 10:16:23 IST 2013

2月31日就是3月3日,有什么问题么?

你的1月是1月31,月份+1就是2月31,你见过2月31么?内部算好的,往后推,超出的当前月份天数月份自行+1