关于calendar的问题?
我做了一个简单的测试
假设今天为200年7月14号
Java code
public static void main(String[] args)
{
Calendar c = Calendar.getInstance();
c.add(Calendar.DAY_OF_MONTH, 20);
System.out.println(c.get(Calendar.DAY_OF_MONTH
));
}
我日期增加20天后,得到的应该是2008年8月3日
但是在获取c.get(Calendar.DAY_OF_MONTH)的时候,得到的却不是8
大家遇到过这样的问题吗?
------解决方案--------------------今天是7月的第14天,你加了20天
就是7月的第34天。(当然7月没有34天,所以进位了,到了第8月)
也就是8月的第3天
所以输出是3
------解决方案--------------------c.get(Calendar.DAY_OF_MONTH)得到的是日不是月
------解决方案--------------------Java code
c.get(Calendar.MONTH) + 1
------解决方案--------------------
月份是从0到11
Java code
import java.util.Calendar;
public class test2 {
public static void main(String[] args) {
Calendar c = Calendar.getInstance();
System.out.println(c.get(Calendar.MONTH));//今天7月14,但这里会输出是6,
c.add(Calendar.DAY_OF_MONTH, 20);
System.out.println(c.get(Calendar.MONTH));//加了20后,这里会输出是7
}
}
------解决方案--------------------
------解决方案--------------------
打错了。应给为System.out.println(c.get(Calendar.DAY_OF_MONTH)+1);.