Calendar日曆類
Calendar 類是一個抽象類,為我們提供了關於日期計算的相關功能,比如:年、月、日、時、分、秒的展示和計算。
GregorianCalendar 是 Calendar 的一個具體子類,提供了世界上大多數國家/地區使用的標準日曆系統。
注意月份的表示,一月是0,二月是1,以此類推,12月是11。 因為大多數人習慣於使用單詞而不是使用數字來表示月份,這樣程序也許更易讀,父類Calendar使用常量來表示月份:JANUARY、FEBRUARY等等。
獲取時間
Calendar calendar = Calendar.getInstance();//獲取年月日時分秒
calendar .get(Calendar.YEAR);
calendar .get(Calendar.MONTH) ; // 0-11,分別表示1-12月
calendar .get(Calendar.DATE); //1-31
calendar .get(Calendar.HOUR_OF_DAY); //24小時制
calendar .get(Calendar.MINUTE);
calendar .get(Calendar.SECOND);
//獲取明天的日曆信息
calendar .add(Calendar.DAY_OF_YEAR, 1);
//獲取昨天的日曆信息
calendar .add(Calendar.DAY_OF_YEAR, -1);
//獲取當前時間的毫秒顯示
calendar .getTimeInMillis()
//常用field
Calendar.YEAR——年份
Calendar.MONTH——月份
Calendar.DATE——日期
Calendar.DAY_OF_MONTH——日期,和上面的欄位完全相同
Calendar.HOUR——12小時制的小時數
Calendar.HOUR_OF_DAY——24小時制的小時數
Calendar.MINUTE——分鐘
Calendar.SECOND——秒
Calendar.DAY_OF_WEEK——星期幾
設置時間
如果想設置為某個日期,可以一次設置年月日時分秒,由於月份下標從0開始賦值月份要-1 ,cal.set(year, month, date, hourOfDay, minute, second);
Calendar cal = Calendar.getInstance();
cal.set(2018, 1, 15, 23, 59, 59);
cal.set(Calendar.HOUR_OF_DAY, 17);
cal .set(Calendar.MINUTE, 30);
日期的計算
Calendar cal = Calendar.getInstance();
System.out.println(cal.getTime());
cal.set(2018, 1, 15, 23, 59, 59);
cal.add(Calendar.SECOND, 1);
System.out.println(cal.getTime());輸出:
ThuFeb 15 23:59:59CST 2018
FriFeb 16 00:00:00CST 2018