我怎么能得到一个“for(id项中的项目)”目标C循环中的数组索引?

我怎样才能得到一个“for(id item in items)”循环中的数组索引在objective-c? 例如NSArray或NSMutableArray。

例如:

for (id item in items) { // How to get item's array index here } 

我能想到的方法是:

 NSUInteger count = 0; for (id item in items) { //do stuff using count as your index count++; } 

坏道

或者,您可以使用NSArrayindexOfObject:消息来获取索引:

 NSUInteger index; for (id item in items) { index = [items indexOfObject:item]; //do stuff using index } 

或者,您可以使用-enumerateObjectsUsingBlock:它将数组元素和相应的索引作为parameter passing给块:

 [items enumerateObjectsUsingBlock:^(id item, NSUInteger idx, BOOL *stop) { … }]; 

奖励:在数组元素上同时执行块操作:

 [items enumerateObjectsWithOptions:NSEnumerationConcurrent usingBlock:^(id item, NSUInteger idx, BOOL *stop) { … }];