关于日期问题

Girl_my_lover 2009-05-31 11:00:43
GregorianCalendar d = new GregorianCalendar();

System.out.println(d.get(Calendar.YEAR));

d.set(GregorianCalendar.MONTH,3);

System.out.println(d.get(GregorianCalendar.MONTH));//这里为什么输出的结果为4呢、、?

最后月份输出为什么是4呢?请高手指教?
...全文
106 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
Adebayor 2009-06-01
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 Girl_my_lover 的回复:]
1、2楼的我知道。。关键是我设置成2的时候输出是2啊

d.set(GregorianCalendar.MONTH,2);
输出结果为2

为什么设置成3就输出4了呢?
脑袋疼!!
[/Quote]
呵呵 是有这个问题
不过 随便加了句d.set(d.get(GregorianCalendar.MONTH),8); 运行后再把它注释掉就没问题了!
感觉似乎有bug
weiluo12 2009-06-01
  • 打赏
  • 举报
回复
奇怪
期待高手!
wanglingzhong 2009-06-01
  • 打赏
  • 举报
回复
奇怪!我的也是3啊!
jonay 2009-06-01
  • 打赏
  • 举报
回复
肯定是你开发工具的问题
weiluo12 2009-06-01
  • 打赏
  • 举报
回复
今天又试了一下,输出的是3
可能是IDE的问题
longq121 2009-06-01
  • 打赏
  • 举报
回复
晕,我怎么输出的就是3呢?
lixj2009 2009-06-01
  • 打赏
  • 举报
回复
LZ今天我又试了一下,没有发生你说的那种情况,那种情况应该是IDE问题
zhugo1981 2009-06-01
  • 打赏
  • 举报
回复
IDE问题
MYtest :
Girl_my_lover 2009-05-31
  • 打赏
  • 举报
回复
1、2楼的我知道。。关键是我设置成2的时候输出是2啊

d.set(GregorianCalendar.MONTH,2);
输出结果为2

为什么设置成3就输出4了呢?
脑袋疼!!
emon123 2009-05-31
  • 打赏
  • 举报
回复
默认月份是从0开始的,一般要+1才是当前的月份
lixj2009 2009-05-31
  • 打赏
  • 举报
回复
d.get(GregorianCalendar.MONTH));这个函数返回月份是从0开始,及0表示1月,后面依次类推

lixj2009 2009-05-31
  • 打赏
  • 举报
回复
默认月份是从0开始的,你要处理时候要+1

62,614

社区成员

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

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