2つの日時の新旧比較をする(時間まで同時に比較します・・・当たり前かw)
日時[NSDate]の比較をするには下記の方法があります。
1:isEqualToDate:メソッド → 同一日時の判定
-(BOOL) isEqualToDate:(NSDate*)date
#入力 date:比較する日時
#出力 戻り値:'YES':一致、'NO':不一致
2:compare:メソッド → 2つの日付の新旧比較
-(NSComparisonResult) compare:(NSDate*)date
#入力 date:比較する日時
#出力 戻り値:'NSOrderedAscending':dateより古い
'NSOrderedSame':dateと一致
'NSOrderedDescending':dateより新しい
例 日時の新旧比較
NSDate *date1 = [NSDate date]; // 今日の日付
NSDate *date2 = [NSDate dateWithTimeIntervalSinceNow:1.0f]; // 比較する日付
NSComparisonResult result = [date1 compare: date2];
Switch (result) {
case NSOrderedAscending:
// date1 が古い時の処理を書きましょう
break;
case NSOrderedSame:
// date1 と一致する時の処理を書きましょう
break;
case NSOrderedDescending:
// date1 が新しいときの処理を書きましょう
break;
}
日時[NSDate]の比較をするには下記の方法があります。
1:isEqualToDate:メソッド → 同一日時の判定
-(BOOL) isEqualToDate:(NSDate*)date
#入力 date:比較する日時
#出力 戻り値:'YES':一致、'NO':不一致
2:compare:メソッド → 2つの日付の新旧比較
-(NSComparisonResult) compare:(NSDate*)date
#入力 date:比較する日時
#出力 戻り値:'NSOrderedAscending':dateより古い
'NSOrderedSame':dateと一致
'NSOrderedDescending':dateより新しい
例 日時の新旧比較
NSDate *date1 = [NSDate date]; // 今日の日付
NSDate *date2 = [NSDate dateWithTimeIntervalSinceNow:1.0f]; // 比較する日付
NSComparisonResult result = [date1 compare: date2];
Switch (result) {
case NSOrderedAscending:
// date1 が古い時の処理を書きましょう
break;
case NSOrderedSame:
// date1 と一致する時の処理を書きましょう
break;
case NSOrderedDescending:
// date1 が新しいときの処理を書きましょう
break;
}