Я храню хеш-значение объекта в качестве уникального идентификатора в этом объекте, например:
[myObj setValue:[NSNumber numberWithInt:[myObj hash]] forKey:@"ID"];
Но при получении значения для этого ключа значение больше не согласуется с хешемэтот код:
NSLog(@"[myObj hash] %i",[myObj hash]);
NSLog(@"[myObj hash] NSNumber %@",[NSNumber numberWithInt:[myObj hash]]);
[myObj setValue:[NSNumber numberWithInt:[myObj hash]] forKey:@"ID"];
NSLog(@"myObj ID %@",[myObj valueForKey:@"ID"]);
Создает вывод, подобный следующему:
[myObj hash] -976941568
[myObj hash] NSNumber -976941568
myObj ID 3584
Какие основные вещи о хэш-парах и / или парах ключ / значение я явно не понимаю?
Томпсон
[РЕДАКТИРОВАТЬ]
Простите мои манеры новичка!myObj является NSManagedObject и соответствует ключу / значению, поэтому ID - это просто ключ, который я создаю на лету.