Мне нужно пройти все пары ключей/значений словаря и сделать что-то с обоими полями. Мне интересно, что более эффективно, традиционный подход "за ключ" или подход к блокам, используя enumerateKeysAndObjectsUsingBlock:.
Здесь у вас есть пример:
Традиционный подход (перед блоками)
for (NSString* key in [self.dictionary allKeys] ) {
[self processKey:key value: [self.dictionary objectForKey:value ]];
}
Блокировка.
[self.dictionary enumerateKeysAndObjectsUsingBlock:^(id key, id obj, BOOL *stop){
[self processKey:key value:obj];
}];
Я чувствую, что перемещение пар ключ/значение с использованием блока происходит быстрее, но я не уверен, так как не знаю, как реализованы словари и конкретный блочный метод.
Любые мысли?
Спасибо заранее!