java 日期类总结

来源:互联网 发布:盘锦中小企业seo 编辑:程序博客网 时间:2024/06/05 03:29
Date类
Date date=new Date(); System.out.println(date);//输出:Tue Jun 16 20:51:24 CST 2015boolean after(Date when) //测试此日期是否在指定日期之后  (没什么用我感觉)                   boolean before(Date when) //测试此日期是否在指定日期之前          int compareTo(Date anotherDate) //比较两个日期的顺序
Calendar类
Calendar类Calendar 类是一个抽象类Calendar实例化有两种方式:
第一种是 Calendar nowTime = new GregorianCalendar();第二种是Calendar calendar=Calendar.getInstance();//当前年     int year = cal.get(Calendar.YEAR);    //当前月 Calendar.MONTH从0开始     int month = (cal.get(Calendar.MONTH))+1;        //当前月的第几天:即当前日     int day_of_month = cal.get(Calendar.DAY_OF_MONTH);    //Calendar.DAY_OF_MONTH 和 Calendar.DATE 是等价的     int date = cal.get(Calendar.DATE);    //当前时钟:HOUR_OF_DAY-24小时制     int hour24 = cal.get(Calendar.HOUR_OF_DAY);    //HOUR-12小时制     int hour12 = cal.get(Calendar.HOUR);    //当前:分钟     int minute = cal.get(Calendar.MINUTE);    //当前秒     int second = cal.get(Calendar.SECOND);    // 星期几 Calendar.DAY_OF_WEEK用数字(1~7)表示(星期日~星期六)     int day_of_week = cal.get(Calendar.DAY_OF_WEEK)-1;        //0-上午;1-下午     int ampm = cal.get(Calendar.AM_PM);      //当前年的第几周     int week_of_year = cal.get(Calendar.WEEK_OF_YEAR);       //当前月的星期数     int week_of_month = cal.get(Calendar.WEEK_OF_MONTH);    //当前月中的第几个星期     int day_of_week_in_month = cal.get(Calendar.DAY_OF_WEEK_IN_MONTH); //当前年的第几天     int day_of_year = cal.get(Calendar.DAY_OF_YEAR);
DateFormat类
在java.text包下,DateFormat 是日期/时间格式化子类的抽象类,它以与语言无关的方式格式化并解析日期或时间。很多java培训的视频里面都讲过,这个类是抽象类,所以不能构造方法来实例化,可以用getDateInstance()和getDateTimeInstance()这两个静态函数来进行实例化。这两个的区别是一个返回的是日期,一个返回的是日期+时间.同时,getDateInstance(int style),getDateInstance(int style, Locale aLocale)等方法也挺好用的。

关于style值:

  1. FULL: 长度最长 比如:2013年1月9日 星期三       
  2. LONG: 长度更长 比如:January 9, 2013
  3. MEDIUM:长度比SHORT长 比如:Jan 9,2013          
  4. SHORT: 完全为数字,比如:13/1/9
eg:DateFormat d1=DateFormat.getDateInstance();     DateFormat d2=DateFormat.getDateTimeInstance();                                               String s1=d1.format(new Date());                                                           String s2=d2.format(new Date());                                         System.out.println(s1);      输出:2015-6-16                                              System.out.println(s2);      2015-6-16 21:05:22 eg1:DateFormat d1=DateFormat.getDateInstance(DateFormat.LONG);       输出:2015年6月16日