Date类
Date date=new Date();
System.out.println(date);//输出:Tue Jun 16 20:51:24 CST 2015
boolean 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值:
- FULL: 长度最长 比如:2013年1月9日 星期三
- LONG: 长度更长 比如:January 9, 2013
- MEDIUM:长度比SHORT长 比如:Jan 9,2013
- 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日