Holen Sie sich alle Schlüssel eines NSDictionary als NSArray


Antworten:


183

Benutz einfach

NSArray*keys=[dict allKeys];

Wenn Sie sich fragen, ob eine bestimmte Klasse eine bestimmte Methode hat, lesen Sie im Allgemeinen die Apple-eigene Dokumentation . In diesem Fall siehe NSDictionary-Klassenreferenz. Gehen Sie alle Methoden durch. Auf diese Weise werden Sie viele nützliche Methoden entdecken.


3
Um nur den ersten Schlüssel zu erhalten, ist NSString * firstKey = [dict allKeys] [0];
Mazen Kasser

1
@ MazenKasser firstObjectist eine sicherere Lösung - falls das Wörterbuch keine Schlüssel hat, stürzt die App nicht ab:dict.allKeys.firstObject;
Islam Q.

1
Die Reihenfolge der von allKeys zurückgegebenen Schlüssel ist undefiniert. Daher ist allKeys.firstObject oder allKeys] [0] in beiden Fällen gefährlich
Brad Thomas,

16

Ja es ist möglich. Verwenden Sie die allKeys- Methode:

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

3

Und wenn Sie alle Schlüssel und Werte erhalten möchten, gehen Sie wie folgt vor:

for (NSString *key in dictionary) {
    id value = dictionary[key];
    NSLog(@"Value: %@ for key: %@", value, key);
}
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.