如何在NSEnumerator迭代中获取当前Object的索引?
问题:如何在NSEnumerator迭代中获取当前Object的索引?
(我不想使用整数计数器跟踪事物,或者由于速度原因而使用for循环。我之前做过它我不记得我是怎么做的......)
没有找到相关结果
已邀请:
2 个回复
香腔弥胯瓤
循环中使用整数计数器会导致速度问题。尝试从枚举器中查找给定对象的索引比仅仅保留索引记录更可能更慢。如果您想绕过重复的消息调度,请查看NSArray的
方法。
您可能只会看到令人难以置信的大型阵列的最小性能差异,但不要低估引擎盖下的优化。即使是
的文档也不鼓励使用这种技术。 NSArray的
将迭代所有元素,直到从
消息返回
(这可能包括进一步的消息发送)。
膏焦凑
适用于大多数情况(但不是全部)。然而,转换为使用带有int计数器的正常for循环总体上会更快。