// 排序
typedef NS_OPTIONS(NSUInteger, NSEnumerationOptions) { NSEnumerationConcurrent = (1UL << 0),
NSEnumerationReverse = (1UL << 1), 逆序
};
// obj 内容// idx 数组中的位置// stop 为YES的时候停止遍历
- (void)enumerateObjectsWithOptions:(NSEnumerationOptions)opts usingBlock:(void (NS_NOESCAPE ^)(ObjectType obj, NSUInteger idx, BOOL *stop))block NS_AVAILABLE(10_6, 4_0);
这种数组遍历方式的优势:
遍历顺序有倒序/并发混序, 可根据枚举值控制比 for循环方便许多.
遍历中自带 *stop参数, 跳出方便.
可以在遍历的 block中增删数据, 比 forin遍历方便许多 .
在庞大的数据量下, 此方式是比 for循环, forin 等方式,要快许多的方式.在其执行过程中可以利用到多核cpu的优势.
网友评论