【问题标题】:Obj-c for..in loop with NSArray ordering? [duplicate]带有 NSArray 排序的 Obj-c for..in 循环? [复制]
【发布时间】:2012-03-29 11:03:53
【问题描述】:

可能重复:
Does fast enumeration in Objective-C guarantee the order of iteration?

只是一个简单的问题,对谷歌来说是个问题:

当像这样快速迭代一个 NSArray 时:

for (NSObject *obj in array) {}

顺序是否明确?在我的测试中似乎是这样,但我无法在任何地方找到保证......

谢谢!

【问题讨论】:

    标签: ios ios5 uikit


    【解决方案1】:

    来自Objective-C 编程语言的Fast Enumeration section

    对于具有明确定义顺序的集合或枚举器(例如从数组派生的 NSArray 或 NSEnumerator 实例),枚举按该顺序进行,因此只需计算迭代次数即可在需要时为您提供正确的集合索引它。

    【讨论】:

      【解决方案2】:

      是的,确实如此。

      文档说 NSArray 及其子类«管理有序对象集合»。 这就是您正在寻找的保证。

      请注意,例如,NSDictionary 并非如此。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-08-13
        • 2011-03-20
        • 1970-01-01
        • 1970-01-01
        • 2012-10-20
        相关资源
        最近更新 更多