Я пытаюсь использовать NSPredicate с 64-битными числами, но по какой-то причине он не работает. Я создаю предикат со следующей строкой:
[NSString stringWithFormat:@"UID == %qu", theUID]
И это всегда терпит неудачу. И все же, если я прокручиваю свои объекты и сравниваю if ( UID == theUID )
, я найду тот, который подходит Я действительно не понимаю, почему это работает неправильно.
Вышеупомянутое выглядит правильно? Мои предикаты прекрасно работают для других целых или даже строк. Но, похоже, это не помогает.
Спасибо!
Редактировать: Так странно ... поэтому я создаю свой предикат, выполнив:
NSPredicate *myPredicate = [NSPredicate predicateWithFormat:myString];
Теперь, когда я печатаю myString, а затем печатаю myPredicate (выполняя NSLog(@"%@", blah);
), я получаю:
Строка: UID == 17667815990388404861 Предикат: UID ==
9223372036854775807
Это одна и та же строка, почему они разные?