使用Calendar类时——疑惑

java_lwqx 2006-03-19 10:19:22
我的代码(欲打印出当前日期&315天之后的日期)
import java.util.*;
public class TestCalendar
{
public static void main(String[] args)
{
Calendar cl=Calendar.getInstance();
System.out.println(cl.get(Calendar.YEAR)+"年"+cl.get(Calendar.MONTH)+"月"+cl.get(cl.DAY_OF_MONTH)+"日");
cl.add(cl.DAY_OF_YEAR,315);
System.out.println(cl.get(Calendar.YEAR)+"年"+cl.get(Calendar.MONTH)+"月"+cl.get(cl.DAY_OF_MONTH)+"日");

}
}
但是结果是月份少了1:
即:
2006年2月19日
2007年0月28日
请问各位这是怎么回事,多谢。
...全文
146 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
aaa2003gf 2006-03-19
  • 打赏
  • 举报
回复
它就那么规定的.没有办法,你+1就是啦
interpb 2006-03-19
  • 打赏
  • 举报
回复
呵呵 就是

ChDw 2006-03-19
  • 打赏
  • 举报
回复
Java的月份是从0开始的,即1月 cal.get(Calendar.MONTH) == 0

老实说,想不通SUN那帮人怎么想的,虽然存在Calendar.MAY这样的月份,但是怎么也应该从1开始嘛。烂

62,629

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧