Java類Calendar

Calendar類

Calendar:它爲特定瞬間與一組諸如 YEAR、MONTH、DAY_OF_MONTH、HOUR 等日曆字段之間的轉換提供了一些方法,併爲操作日曆字段(例如獲得下星期的日期)提供了一些方法。

一、構造方法

protected Calendar() :由於修飾符是protected,所以無法直接創建該對象。需要通過別的途徑生成該對象。

二、成員方法

									Calendar類的成員方法
static Calendar getInstance() 使用默認時區和區域設置獲取日曆。通過該方法生成Calendar對象。如下所示:Calendar cr=Calendar.getInstance();
public void set(int year,int month,int date,int hourofday,int minute,int second) 設置日曆的年、月、日、時、分、秒。
public int get(int field) 返回給定日曆字段的值。所謂字段就是年、月、日等等。
public void setTime(Date date) 使用給定的Date設置此日曆的時間。Date------Calendar
public Date getTime() 返回一個Date表示此日曆的時間。Calendar-----Date
abstract void add(int field,int amount) 按照日曆的規則,給指定字段添加或減少時間量。
public long getTimeInMillies() 以毫秒爲單位返回該日曆的時間值。

三、日曆字段

日曆字段包含以下兩種:一種是表示時間的單位,例如年、月、日等等。另一種是具體的日期,例如一月、二月、三月、一日、二日、三日、一點鐘、兩點鐘等等具體的時間。前一種一般時獲取的時候使用,後一種一般判斷的時候使用。

時間單位字段:

YEAR MINUTE DAY_OF_WEEK_IN_MONTH 某月中第幾周
MONTH SECOND/MILLISECOND 秒/毫秒 WEEK_OF_MONTH 日曆式的第幾周
DATE DAY_OF_MONTH 和DATE一樣 DAY_OF_YEAR 一年的第多少天
HOUR_OF_DAY DAY_OF_WEEK 周幾 WEEK_OF_YEAR 一年的第多少周

具體時間字段:這裏就不累贅了,從一月到十二月、從週一到週五

特殊的:AM_PM 返回1則表示是下午,返回0表示上午。

四.DEMO

public class CalendarDemo {
	public static void main(String[] args) {
		// 其日曆字段已由當前日期和時間初始化:
		Calendar rightNow = Calendar.getInstance(); // 子類對象
		// 獲取年
		int year = rightNow.get(Calendar.YEAR);
		// 獲取月
		int month = rightNow.get(Calendar.MONTH);
		// 獲取日
		int date = rightNow.get(Calendar.DATE);
		//獲取幾點
		int hour=rightNow.get(Calendar.HOUR_OF_DAY);
		//獲取上午下午
		int moa=rightNow.get(Calendar.AM_PM);
		if(moa==1)
			System.out.println("下午");
		else
			System.out.println("上午");
 
		System.out.println(year + "年" + (month + 1) + "月" + date + "日"+hour+"時");
		rightNow.add(Calendar.YEAR,5);
		rightNow.add(Calendar.DATE, -10);
		int year1 = rightNow.get(Calendar.YEAR);
		int date1 = rightNow.get(Calendar.DATE);
		System.out.println(year1 + "年" + (month + 1) + "月" + date1 + "日"+hour+"時");
	}
}

注意:month是從0開始的,而月份是從1開始的,所以month需要加一。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章