Ответ 1
Возможно, посмотрите на метод NSDictionary:
enumerateKeysAndObjectsUsingBlock:(void (^)(id key, id obj, BOOL *stop))
Если вы не знакомы с блоками в C/ Objective-C, это хороший учебник: http://thirdcog.eu/pwcblocks/
Я знаю, что вы можете перечислить ключи или значения NSMutableDictionary
с помощью NSEnumerator
. Можно ли сделать оба вместе? Я ищу что-то похожее на перечисление PHP foreach
, например:
foreach ($dictionary as $key => $value);
Возможно, посмотрите на метод NSDictionary:
enumerateKeysAndObjectsUsingBlock:(void (^)(id key, id obj, BOOL *stop))
Если вы не знакомы с блоками в C/ Objective-C, это хороший учебник: http://thirdcog.eu/pwcblocks/
NSDictionary* d = [NSDictionary dictionaryWithObjectsAndKeys:@"obj1",@"key1",
@"obj2",@"key2",
@"obj3",@"key3",
@"obj4",@"key4",nil];
for (id key in [d allKeys]) {
NSLog(@"%@ - %@",key,[d objectForKey:key]);
}
Выходы:
keytest[7880:a0f] key3 - obj3
keytest[7880:a0f] key1 - obj1
keytest[7880:a0f] key4 - obj4
keytest[7880:a0f] key2 - obj2
Теперь намного проще:
for (NSString * key in dict)
{
id/* or your type */ value = dict[key];
...
}