ios - 速度 : iOS Using NSPredicate filterUsingPredicate vs. for 循环

标签 ios performance filter nsmutablearray nspredicate

我需要过滤自定义对象的 NSMutableArray,并且想知道以下其中一个在速度/运行时间方面是否比另一个更好,或者它们是否实际上相同:

(1) 使用[数组filterUsingPredicate:predicate],

(2)使用for循环遍历所有元素并检查它们是否满足我自己的条件。

我问这个问题只是因为我认为每个对象必须满足的标准可能会有所不同,因此制作谓词可能会很棘手。

提前致谢!

最佳答案

我不相信这两种技术在一般情况下会明显更快。这两种技术都对循环或谓词的编写方式以及数据的外观很敏感。如果数组未按照您的过滤条件排序,则它们都必须遍历所有元素。

使用能让您获得更清晰、更易于维护的代码的方法,然后在发现存在实际性能瓶颈时考虑尝试将其与其他方法进行比较。

关于ios - 速度 : iOS Using NSPredicate filterUsingPredicate vs. for 循环,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17887919/

相关文章:

c - 在 C if-else 语句中,应该先出现更可能为真的条件吗?

c - 哪个更快 : Increment or equation with addition arithmetic

ios - Collection View :numberOfItemsInSection: in UITableviewcell (DetailedCell)

iphone - 如何使用 phonegap 成为整个原生 ios 应用程序的一部分

iphone - 从 UINavigationController 推送 UITabBarController

sql - SQL 过滤器中的 CASE 与 OR

arrays - 在swift中过滤元素出现次数最多的数组

ios - React-Native-Camera - 无法读取未定义的属性 'Aspect'

Java:创建大量新对象

java - 如何通过属性使用流来过滤对象?