数组的快速枚举是否总是按索引顺序排列?
for (NSDictionary *zone in myArray)
{
//do code
}
总是从索引位置0,1,2,...,n?
枚举我更喜欢快速枚举而不是标准for循环,因为它使代码更容易阅读。
答案 0 :(得分:17)
是的,它会:
对于具有明确定义的订单的集合或枚举器 - 例如 从数组派生的NSArray或NSEnumerator实例 枚举按此顺序进行,因此只需计算迭代次数 如果需要,可以为您提供正确的索引索引。
答案 1 :(得分:4)
要快速枚举带索引的数组,请使用块:
[myArray enumerateObjectsUsingBlock:^(NSObject *object, NSUInteger idx, BOOL *stop) {
...
// idx is myArray's index
}];