Перечислить NSDictionary с ключами и объектами, PHP-стиль

Я знаю, что вы можете перечислить ключи или значения NSMutableDictionary используя NSEnumerator . Можно ли сделать оба вместе? Я ищу что-то похожее на перечисление PHP foreach например:

 foreach ($dictionary as $key => $value); 

Related of "Перечислить NSDictionary с ключами и объектами, PHP-стиль"

Возможно, посмотрите на метод 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]; ... }