我已经构建了一些代码来制作辅助字典来存储主字典的键。所以我可以得到一个值的键。为了使它们唯一,如果有两个或多个相同的值,我将字典对象的 ID 存储为键,并将它们的键存储为对象。
但是当两个对象具有相同的值时,它们也具有相同的 ID。因此我无法检索两个不同的密钥:
NSDictionary *myDict = @{@"key1": @"obj1", @"key2": @"obj1", @"key3" : @"x"};
NSLog(@"%p",[myDict objectForKey:@"key1"]);
NSLog(@"%p",[myDict objectForKey:@"key2"]);
输出:
2013-03-06 02:03:28.740 DictTest[2855:303] 0x1000028e8
2013-03-06 02:03:28.741 DictTest[2855:303] 0x1000028e8
我怎样才能防止这种情况?