У меня есть набор NSTimeIntervals, как это:
NSArray *mySet = [NSArray arrayWithObjects:
[NSNumber numberWithDouble: time1], //
[NSNumber numberWithDouble: time2],
[NSNumber numberWithDouble: time3],
nil];
// suppose that at this time
// time1 = 0.00000
// time2 = 18.3200
// time3 = 21.6500
В какой-то момент моего кода я хочу проверить, является ли currentTime большим или равным одному из значений в массиве, поэтому я делаю
// currentTime = 18.32 right now
for (int i=0; i<[mySet count]; i++) {
if (currentTime >= [[mySet objectAtIndex:i] doubleValue]) {
NSLog(@"%d...", i);
}
}
Вывод должен быть "1 ... 2 ..."
но вывод просто "1 ..."
когда i = 1 ,
он сравнивает 18.32 с 18.32 и не может распознать, что значение равно или больше, чем другое? ВТФ ???
Как это может быть?
спасибо за любую помощь.