假设Items
是NSMutableArray
。我想知道其Items
数组中项对象的索引。我可以通过设置一个“i”计数器来实现这一目标,但那很难看。这样做有一种优雅的方式吗?
for(item* item in Items){
//do something with the item considering its **index** in the Items array
}
答案 0 :(得分:11)
indexOfObject:
indexOfObjectIdenticalTo:
编辑:
仔细阅读描述,indexOfObjectIdenticalTo:可能就是你想要的。
但是,在这种情况下,添加计数器是快速的方法。
答案 1 :(得分:7)
indexOfObject:
方法有什么问题?
NSUInteger i = [ array indexOfObject: anObject ];
答案 2 :(得分:2)
如果您不想在for循环中使用计数器,请使用NSMutableArray enumerateObjectsUsingBlock
。这将迭代元素并将索引作为您提供的块中的参数。执行此操作会更加高效indexOfObject
- 必须在返回索引之前搜索整个数组。当你已经“知道”索引时,使用它似乎很愚蠢。