How do I pull an integer out of a NSDictionary and put it in an integer?

Dale picture Dale · Sep 23, 2009 · Viewed 23.1k times · Source

I've got an NSDictionary that was initialized with a plist that, among other things, contained count followed by 32 and I want to get at the value for count.

How?

I know how to get it into an object via

[dictionaryObjectName objectForKey:@"count"]

But to me, the value I'm obtaining is not an object.

If I have to specify an object, what would be the best one to use (FYI the value will always be unsigned) and I need to get it into a true int.

Do I do something like

NSNumber *num = [dictionaryObjectName objectForKey:@"count"];
int theValue = [num intValue];
[num release];

Is the release on num a good thing to do since this for an iPhone with no garbage collector?

Answer

ishahak picture ishahak · Oct 18, 2013

And nicer form is:

int theValue = [[dictionaryObjectName objectForKey:@"count"] intValue];

EDIT

Since I see that people still arrive to this page, let's clarify that these days you simply do

int theValue = [dictionaryObjectName[@"count"] intValue];