objective-c cocoa-touch ios nsdictionary

objective c - NSDictionary clave para Value/Object?



objective-c cocoa-touch (3)

Así es como puede obtener una primera clave para el objeto (en caso de que sea un NSString ):

NSArray *keys = [yourDic allKeysForObject:yourObject]; NSString *yourKey; if ([keys count] > 0) { yourKey = keys[0]; }

Esto maneja si el objeto no se encuentra en el diccionario.

¿Podemos obtener la clave para un objeto en un NSDictionary pasando un valor u objeto particular?


Para responder a su pregunta de una manera más específica, use lo siguiente para obtener una clave para un objeto en particular:

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


-[NSDictionary allKeysForObject:] devuelve un NSArray de todas las claves cuyos objetos coinciden con el objeto pasado, donde "coincidencia" está determinada por isEqual: