gpt4 book ai didi

objective-c - 是否应该尽可能避免反转 NSMutableArray?

转载 作者:太空狗 更新时间:2023-10-30 04:00:31 28 4
gpt4 key购买 nike

假设我有 NSNumbers 1 - 450。我可以选择将它们添加到一个 NSMutableArray 中,要么从 1 开始到 450 结束,要么从 450 开始到 1 结束。如果我可以从1 并以 450 结尾,但是当我最终需要枚举数组时,我最终需要反转它。换句话说,我需要枚举中的第一个对象为 450,最后一个对象为 1。

因为如果我这样做的话我的代码会更简单(从 1 开始添加,然后在枚举之前反转它),这是我的首选方法。但是,- (NSEnumerator *)reverseObjectEnumerator 的 Apple 文档说:

It is more efficient to use the fast enumeration protocol (see NSFastEnumeration). Fast enumeration is available on Mac OS X v10.5 and later and iOS 2.0 and later.

那么我是否应该避免数组反转并简单地编写稍微复杂一些的代码,以便首先以所需的顺序创建 NSMutableArray?

最佳答案

您可以使用 NSEnumerator 实例进行快速枚举,documentation关于快速枚举甚至以reverseObjectEnumerator:方法为例:

NSEnumerator *enumerator = [array reverseObjectEnumerator];
for (NSString *element in enumerator) {
//...
}

此外,您的问题听起来很像过早的优化...

关于objective-c - 是否应该尽可能避免反转 NSMutableArray?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7409114/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com