Как вытащить целое число из NSDictionary и положить его в целое число? - PullRequest
24 голосов
/ 23 сентября 2009

У меня есть NSDictionary, который был инициализирован с помощью plist, который, помимо прочего, содержал count, а затем 32, и я хочу получить значение для count.

Как?

Я знаю, как получить его в объект через

[dictionaryObjectName objectForKey:@"count"]

Но для меня ценность, которую я получаю, не является объектом.

Если мне нужно указать объект, какой из них лучше использовать (FYI, значение всегда будет без знака), и мне нужно получить его в истинном int.

Должен ли я сделать что-то вроде

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

Является ли выпуск на Num хорошей вещью, поскольку это для iPhone без сборщика мусора?

Ответы [ 2 ]

28 голосов
/ 18 октября 2013

И лучше форма:

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

EDIT

Поскольку я вижу, что люди все еще приходят на эту страницу, давайте уточним, что в эти дни вы просто делаете

int theValue = [dictionaryObjectName[@"count"] intValue];
24 голосов
/ 23 сентября 2009

Да, вы вытаскиваете его как NSNumber, затем берете int(eger)Value, но отпустить его не нужно. Вы не сохраняли, не выделяли и не копировали номер, поэтому вам не нужно беспокоиться о его освобождении.

...