Ответ 1
Хорошо, потому что значение может быть в NSDictionary несколько раз, нет никакого способа сказать "Дайте мне ключ для этого значения". Но вы можете сказать "Дайте мне все ключи, содержащие это значение".
NSArray* arrayOfKeys = [yourDictionary allKeysForObject:myObject];
Если значение только в словаре, вы можете просто извлечь его, используя:
YourObject* o = [arrayOfKeys firstObject];
Но всегда делайте NIL и проверяйте счет в этом массиве. Вне пределов исключения!
P.S. Кредиты для метода @Hagile для firstObject
вместо objectAtIndex:0