A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

本帖最后由 kakasa 于 2014-8-7 21:57 编辑

把set方法注释调后,重新编译打印的怎么还是set后的时间?
  1. import java.util.*;
  2. import java.text.*;
  3. class Test
  4. {

  5.         public static void main(String[] args)
  6.         {        
  7.                 Date d=new Date();   
  8.                 sop(d);                            //这里可以正常输出当前时间。
  9.                 Calendar c=Calendar.getInstance();
  10.                
  11.                 //c.set(2014,7,7);    //已经注释,重新编译还是 2014.7.7
  12.                
  13.                 PrintTime(c);
  14.         }
  15.         public static void sop(Object obj)
  16.         {
  17.                 System.out.println(obj);
  18.         }
  19.         public static void PrintTime(Calendar c)
  20.         {
  21.                 sop(c.get(Calendar.YEAR)+"-"+c.get(Calendar.MONTH)+"-"+c.get(Calendar.DAY_OF_MONTH)+"-"+c.get(Calendar.DAY_OF_WEEK));
  22.         }
  23. }
复制代码



5 个回复

正序浏览
月份是从0开始的 也就是0表示的是1月,  星期也是,外国,周末是一周的开始!
回复 使用道具 举报
本帖最后由 kakasa 于 2014-8-7 22:00 编辑

犯二了  set后的日期原来是今天 哎
回复 使用道具 举报
Calendar的默认月份计时好像是从0月开始的,也就是所显示的是一直比当前月份少一月,调用c.get(Calendar.MONTH)方法的时候记得加一月才会正常显示!
回复 使用道具 举报
陶圣虎 发表于 2014-8-7 21:11
难道电脑的时间被修改了?应该没这么强大吧。

怎么可能。。
回复 使用道具 举报
难道电脑的时间被修改了?应该没这么强大吧。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马