Как я могу отображать время как числовое значение для оператора if?

Я пытаюсь написать оператор if, в котором установленное время сравнивается с моим вычисленным временем возникновения события. Я просто не знаю, как записать это время как ценность. как, например, записать время, такое как 10 утра, в качестве установленного значения времени.

Любая помощь очень ценится.

1
12Gig 26 Авг 2011 в 17:09

3 ответа

Лучший ответ

Вы можете использовать класс NSDate и метод timeIntervalSinceDate: для сравнения двух времен. Вам нужно настроить два объекта NSDate с разным временем (и той же датой), а затем вызвать этот метод для сравнения двух.

2
Suhail Patel 26 Авг 2011 в 13:12

Самый простой способ сделать это, вероятно, - преобразовать время в метку времени UNIX (целое число без знака, представляющее количество секунд, прошедших с 1 января 1970 года).

Конвертируйте оба раза в этот формат и сравните.

time_t unixTime = (time_t) [[NSDate date] timeIntervalSince1970];
0
cdnza 26 Авг 2011 в 13:14

Для сравнения двух дат используйте:

- (NSComparisonResult)compare:(NSDate *)anotherDate

Вот определение NSComparisonResult:

enum {
   NSOrderedAscending = -1,
   NSOrderedSame,
   NSOrderedDescending
};
typedef NSInteger NSComparisonResult;
0
zaph 26 Авг 2011 в 13:28