大家好~~!
   我打算实现会议的定时召开功能。其中,预定召开会议时间和现在时间的间隔利用calendar类的方法来完成,其中具体代码如下
      Calendar cal  = Calendar.getInstance();
      cal.clear();
      cal.set(2006,startmonth-1,startday,starthour,startminute);//设置会议召开时间
       int year=cal.get(Calendar.YEAR);
但当我设置会议年份为2006年,并执行了 int year=cal.get(Calendar.YEAR)后得到的返回值总是2011,在计算间隔时也是按照2011年来计算的 ,实在不知道为什么~还请各位高手指点~~!!

解决方案 »

  1.   

    请分别打印下你的startmonth-1,startday,starthour,startminute这几个参数,看有没有问题。
    cal.set(2006,3-1,2,11,20);如果是这些值就不会有总是,但如果月份等太大就会有问题。
    cal.set(2006,61,2,11,20);
      

  2.   

    程序没有问题啊,我运行都是正常显示,你看看是不是你还在其他地方对cal做了操作。
    如果没有的话,可能就是你的jdk的问题了。
    建议装一个新的jdk
      

  3.   

    呵呵,这样就会显示2011了
    Calendar cal = Calendar.getInstance();
    cal.clear();
    cal.set(2006,61,0,0,0);//设置会议召开时间
    int year=cal.get(Calendar.YEAR);
    System.out.println(year);
      

  4.   

    这样也是2011,呵呵
    cal.set(2006,1,1800,0,0);