NSDate基本用法

2021-05-27 15:19:46 字數 2533 閱讀 2026

nsdate常用**範例 

nsdate類用於儲存時間值,同時提供了一些方法來處理一些基於秒級別時差(time interval)運算和日期之間的早晚比較等。

1. 建立或初始化可用以下方法

用於建立nsdate例項的類方法有

+ (id)date;

返回當前時間

+ (id)datewithtimeintervalsincenow:(nstimeinterval)secs;   

返回以當前時間為基準,然後過了secs秒的時間

+ (id)datewithtimeintervalsincereferencedate:(nstimeinterval)secs;

返回以2001/01/01 gmt為基準,然後過了secs秒的時間

+ (id)datewithtimeintervalsince1970:(nstimeinterval)secs;

返回以1970/01/01 gmt為基準,然後過了secs秒的時間

+ (id)distantfuture;

返回很多年以後的未來的某一天。

比如你需要乙個比現在(now)晚(大)很長時間的時間值,則可以呼叫該方法。測試返回了4000/12/31 16:00:00

+ (id)distantpast;

返回很多年以前的某一天。

比如你需要乙個比現在(now)早(小)大很長時間的時間值,則可以呼叫該方法。測試返回了西元前0001/12/31 17:00:00

用於建立nsdate例項的例項方法有

- (id)addtimeinterval:(nstimeinterval)secs;

返回以目前的例項中儲存的時間為基準,然後過了secs秒的時間

用於初始化nsdate例項的例項方法有

- (id)init;

初始化為當前時間。類似date方法

- (id)initwithtimeintervalsincereferencedate:(nstimeinterval)secs;

初始化為以2001/01/01 gmt為基準,然後過了secs秒的時間。類似datewithtimeintervalsincereferencedate:方法

- (id)initwithtimeinterval:(nstimeinterval)secs sincedate:(nsdate *)refdate;

初始化為以refdate為基準,然後過了secs秒的時間

- (id)initwithtimeintervalsincenow:(nstimeinterval)secs;

初始化為以當前時間為基準,然後過了secs秒的時間

2. 日期之間比較可用以下方法

- (bool)isequaltodate:(nsdate *)otherdate;

與otherdate比較,相同返回yes

- (nsdate *)earlierdate:(nsdate *)anotherdate;

與anotherdate比較,返回較早的那個日期

- (nsdate *)laterdate:(nsdate *)anotherdate;

與anotherdate比較,返回較晚的那個日期

- (nscomparisonresult)compare:(nsdate *)other;

該方法用於排序時呼叫:

. 當例項儲存的日期值與anotherdate相同時返回nsorderedsame

. 當例項儲存的日期值晚於anotherdate時返回nsordereddescending

. 當例項儲存的日期值早於anotherdate時返回nsorderedascending

3. 取回時間間隔可用以下方法

- (nstimeinterval)timeintervalsincedate:(nsdate *)refdate;

以refdate為基準時間,返回例項儲存的時間與refdate的時間間隔

- (nstimeinterval)timeintervalsincenow;

以當前時間(now)為基準時間,返回例項儲存的時間與當前時間(now)的時間間隔

- (nstimeinterval)timeintervalsince1970;

以1970/01/01 gmt為基準時間,返回例項儲存的時間與1970/01/01 gmt的時間間隔

- (nstimeinterval)timeintervalsincereferencedate;

以2001/01/01 gmt為基準時間,返回例項儲存的時間與2001/01/01 gmt的時間間隔

+ (nstimeinterval)timeintervalsincereferencedate;

以2001/01/01 gmt為基準時間,返回當前時間(now)與2001/01/01 gmt的時間間隔

4. 將時間表示成字串

- (nsstring *)description;

以yyyy-mm-dd hh:mm:ss ±hhmm的格式表示時間。

其中 "±hhmm" 表示與gmt的存在多少小時多少分鐘的時區差異。比如,若時區設定在北京,則 "±hhmm" 顯示為 "+0800"

NSDate的常用用法

1.建立或初始化可用以下方法 用於建立nsdate例項的類方法有 id date 返回當前時間 id datewithtimeintervalsincenow nstimeinterval secs 返回以當前時間為基準,然後過了secs秒的時間 id datewithtimeintervalsin...

NSDate的常用用法

1.建立或初始化可用以下方法 用於建立nsdate例項的類方法有 id date 返回當前時間 id datewithtimeintervalsincenow nstimeinterval secs 返回以當前時間為基準,然後過了secs秒的時間 id datewithtimeintervalsin...

iOS中 NSDate 的用法

1 當前時間建立nsdate nsdate mydate nsdate date nslog mydate mydate 2 從現在開始的24小時 nstimeinterval secondsperday 24 60 60 nsdate tomorrow nsdate datewithtimeint...