Помимо очевидных различий:
- Используйте
enumerateObjectsUsingBlock, когда вам нужны как индекс, так и объект -
Не используйте(я ошибался в этом, см. ответ bbum)enumerateObjectsUsingBlock, когда вам нужно изменить локальные переменные
Является ли enumerateObjectsUsingBlock вообще лучше или хуже, когда for (id obj in myArray) также будет работать? Каковы преимущества/недостатки (например, более или менее эффективны)?