Можем ли мы получить ключ для объекта в NSDictionary, передав определенное значение или объект?
NSDictionary
-[NSDictionary allKeysForObject:] возвращает NSArray всех ключей, чьи объекты соответствуют переданному объекту, где "match" определяется как isEqual:.
-[NSDictionary allKeysForObject:]
NSArray
isEqual:
Чтобы ответить на ваш вопрос более конкретным образом, используйте следующую команду, чтобы получить ключ для определенного объекта:
NSString *knownObject = @"the object"; NSArray *temp = [dict allKeysForObject:knownObject]; NSString *key = [temp lastObject]; //"key" is now equal to the key of the object you were looking for
Вот как вы можете получить первый ключ для объекта (если это NSString):
NSString
NSArray *keys = [yourDic allKeysForObject:yourObject]; NSString *yourKey; if ([keys count] > 0) { yourKey = keys[0]; }
Обрабатывается, если объект не найден в словаре.