Dapatkan semua kunci NSDictionary sebagai NSArray

86

Apakah mungkin untuk mendapatkan semua kunci dari yang spesifik NSDictionarysebagai satu kesatuan NSArray?

Jay
sumber

Jawaban:

184

Gunakan saja

NSArray*keys=[dict allKeys];

Secara umum, jika Anda bertanya-tanya apakah kelas tertentu memiliki metode tertentu, lihat dokumentasi Apple sendiri . Dalam hal ini, lihat referensi kelas NSDictionary. Pelajari semua metode. Anda akan menemukan banyak metode berguna dengan cara itu.

Yuji
sumber
3
Untuk mendapatkan kunci pertama hanya NSString * firstKey = [dict allKeys] [0];
Mazen Kasser
2
@MazenKasser firstObjectadalah solusi yang lebih aman - jika kamus tidak memiliki kunci aplikasi tidak akan macet:dict.allKeys.firstObject;
Islam Q.
1
urutan kunci yang dikembalikan oleh allKeys tidak ditentukan ... jadi allKeys.firstObject atau allKeys] [0] juga berbahaya
Brad Thomas
16

Iya itu mungkin. Gunakan metode allKeys :

NSDictionary *yourDictionary;
NSArray * yourKeys
yourKeys = [yourDictionary allKeys];
gsempe.dll
sumber
3

Dan jika Anda ingin mendapatkan semua kunci dan nilai , inilah yang Anda lakukan:

for (NSString *key in dictionary) {
    id value = dictionary[key];
    NSLog(@"Value: %@ for key: %@", value, key);
}
kode yang mengerikan
sumber