Obtenga todas las claves de un NSDictionary como NSArray


Respuestas:


184

Solo usa

NSArray*keys=[dict allKeys];

En general, si se pregunta si una clase específica tiene un método específico, busque la documentación de Apple . En este caso, consulte la referencia de clase NSDictionary. Repase todos los métodos. Descubrirá muchos métodos útiles de esa manera.


3
Para obtener la primera clave solamente es NSString * firstKey = [dict allKeys] [0];
Mazen Kasser

2
@MazenKasser firstObjectes una solución más segura; en caso de que el diccionario no tenga claves, la aplicación no fallará:dict.allKeys.firstObject;
Islam Q.20 de

1
el orden de las claves devueltas por allKeys no está definido ... así que allKeys.firstObject o allKeys] [0] es peligroso de cualquier manera
Brad Thomas

16

Si es posible. Utilice el método allKeys :

NSDictionary *yourDictionary;
NSArray * yourKeys
yourKeys = [yourDictionary allKeys];

3

Y si desea obtener todas las claves y valores , esto es lo que debe hacer:

for (NSString *key in dictionary) {
    id value = dictionary[key];
    NSLog(@"Value: %@ for key: %@", value, key);
}
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.