Obtenir toutes les clés d'un NSDictionary en tant que NSArray


Réponses:


184

Juste utiliser

NSArray*keys=[dict allKeys];

En général, si vous vous demandez si une classe spécifique a une méthode spécifique, consultez la documentation d'Apple . Dans ce cas, consultez Référence de classe NSDictionary. Passez en revue toutes les méthodes. Vous découvrirez ainsi de nombreuses méthodes utiles.


3
Pour obtenir la première clé uniquement, NSString * firstKey = [dict allKeys] [0];
Mazen Kasser

2
@MazenKasser firstObjectest une solution plus sûre - si le dictionnaire n'a pas de clés, l'application ne plantera pas:dict.allKeys.firstObject;
Islam Q.

1
l'ordre des clés renvoyées par allKeys n'est pas défini ... donc allKeys.firstObject ou allKeys] [0] est dangereux dans les deux cas
Brad Thomas

16

Oui c'est possible. Utilisez la méthode allKeys :

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

3

Et si vous souhaitez obtenir toutes les clés et valeurs , voici ce que vous faites:

for (NSString *key in dictionary) {
    id value = dictionary[key];
    NSLog(@"Value: %@ for key: %@", value, key);
}
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.