特定の値またはオブジェクトを渡すことで、NSDictionary
内のオブジェクトのキーを取得できますか?
-[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
の場合):
NSArray *keys = [yourDic allKeysForObject:yourObject];
NSString *yourKey;
if ([keys count] > 0) {
yourKey = keys[0];
}
これは、オブジェクトがディクショナリに見つからない場合に処理します。