Obtenha todas as chaves de um NSDictionary como um NSArray


Respostas:


184

Apenas use

NSArray*keys=[dict allKeys];

Em geral, se você quer saber se uma classe específica possui um método específico, consulte a documentação da própria Apple . Nesse caso, consulte a referência de classe NSDictionary. Passe por todos os métodos. Você descobrirá muitos métodos úteis dessa maneira.


3
Para obter a primeira chave apenas é NSString * firstKey = [dict allKeys] [0];
Mazen Kasser

2
@MazenKasser firstObjecté uma solução mais segura - caso o dicionário não tenha nenhuma chave, o aplicativo não travará:dict.allKeys.firstObject;
Islam Q.

1
a ordem das chaves retornada por allKeys é indefinida ... então allKeys.firstObject ou allKeys] [0] é perigoso de qualquer maneira
Brad Thomas

16

Sim é possivel. Use o método allKeys :

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

3

E se você deseja obter todas as chaves e valores , faça o seguinte:

for (NSString *key in dictionary) {
    id value = dictionary[key];
    NSLog(@"Value: %@ for key: %@", value, key);
}
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.