Jay
Jay

Reputation: 913

Get all keys of an NSDictionary as an NSArray

Is it possible to get all the keys from a specific NSDictionary as a seperate NSArray?

Upvotes: 90

Views: 73963

Answers (3)

awfulcode
awfulcode

Reputation: 627

And if you want to get all keys and values, here's what you do:

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

Upvotes: 3

Yuji
Yuji

Reputation: 34185

Just use

NSArray*keys=[dict allKeys];

In general, if you wonder if a specific class has a specific method, look up Apple's own documentation. In this case, see NSDictionary class reference. Go through all the methods. You'll discover many useful methods that way.

Upvotes: 191

gsempe
gsempe

Reputation: 5499

Yes it's possible. Use allKeys method:

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

Upvotes: 17

Related Questions