Calendar 日历类
Calendar 类是一个抽象类,它为特定瞬间与一组诸如 YEAR、MONTH、DAY_OF_MONTH、HOUR 等 日历字段之间的转换提供了一些方法,并为操作日历字段(例如获得下星期的日期)提供了一些方法。瞬间可用毫秒值来表示,它是距历元(即格林威治标准时间 1970 年 1 月 1 日的 00:00:00.000,格里高利历)的偏移量。
GregorianCalendar 是 Calendar 的一个具体子类,提供了世界上大多数国家/地区使用的标准日历系统。
注意月份的表示,一月是0,二月是1,以此类推,是12月是11。因为大多数人习惯于使用单词而不是使用数字来表示月份,这样程序也许更易读,父类Calendar使用常量来表示月份:JANUARY, FEBRUARY,等等。
public static void main(String[] args) throws ParseException {
Calendar calendar = new GregorianCalendar(2015, 11, 9, 11, 9, 50);
Calendar calendar2 = new GregorianCalendar();
// 设定日期(set)
calendar2.set(2015,11,9,11,45,34);//整体设定
calendar2.set(Calendar.YEAR, 2015);//分别设定
calendar2.set(Calendar.MONTH, 11);
calendar2.set(Calendar.DATE, 9);
calendar2.set(Calendar.HOUR_OF_DAY, 11);
calendar2.set(calendar.MINUTE, 45);
calendar2.set(calendar.SECOND, 34);
// 得到相关的日期元素。(get)
int year = calendar2.get(Calendar.YEAR);
int month = calendar2.get(Calendar.MONTH);
int Date = calendar2.get(Calendar.DATE);
// 日:Calendar.Date和Calendar.DAY_OF_MONTH同义。
int hour = calendar2.get(Calendar.HOUR);
int Minute = calendar2.get(Calendar.MINUTE);
int ss = calendar2.get(Calendar.SECOND);
int week = calendar2.get(Calendar.DAY_OF_WEEK);
// 星期几 这里:1-7.周日是1,周一是2,,,,,周六是7
System.out.printf("%d年%d月%d日,星期%d\n", year, month, Date, week);
// 日期计算(add)
GregorianCalendar calendar3 = new GregorianCalendar(2015, 11, 9, 14, 55, 50);
;
calendar3.add(Calendar.MONTH, -7);// 月份减7
calendar3.add(Calendar.DATE, 7);// 增加7天
// 日历对象和时间对象转化。(setTime getTime)
Date d = calendar3.getTime();
long millSecond = calendar3.getTimeInMillis();
Date date2 = new Date();
GregorianCalendar calendar4 = new GregorianCalendar();
calendar4.setTime(date2);
long g = System.currentTimeMillis();
}