У меня есть код, который проходит через массив NSManagedObjects и останавливается, когда находит определенную запись, которая хранится в переменной экземпляра. Единственный способ, которым я могу увидеть, являются ли они одной и той же записью (а не эквивалентной записью, конкретной записью), сравнивает URIRпредставления идентификаторов объектов. Это, безусловно, не может быть лучшим способом сделать это. Я делаю:
if ([[[obj1 objectID] URIRepresentation] isEqualTo: [[_obj2 objectID] URIRepresentation]]) {
NSLog(@"Match");
}
Следующий код никогда не совпадает даже в том случае, если я NSLogIDIDID и вижу, что они на самом деле точно такие же.
if ([[obj1 objectID] isEqualTo: [_obj2 objectID]]) {
NSLog(@"Match");
}