В качестве альтернативы вы можете использовать -enumerateObjectsUsingBlock:
, который передает элемент массива и соответствующий индекс в качестве аргументов в блок:
[items enumerateObjectsUsingBlock:^(id item, NSUInteger idx, BOOL *stop)
{
…
}];
Бонус: одновременное выполнение операции блока над элементами массива:
[items enumerateObjectsWithOptions:NSEnumerationConcurrent
usingBlock:^(id item, NSUInteger idx, BOOL *stop)
{
…
}];