4

我有一个包含大约 200K 元素的数组,我正在使用这个谓词来过滤一些元素。

NSArray * filteredArray = [mainArray filteredArrayUsingPredicate: 
  [NSPredicate predicateWithFormat: @"(value1 == %@) && 
  (value2 == %@) && (value3 >= %d) && (value4 != %@)",
  value1, value2, value3, value4]
];

当我在 iPad 较旧的 iOS 版本中运行此应用程序时,此代码需要 0.22 秒才能执行。(我已经在 iOS 14.7、12.4、13.2 等中进行了测试。)。但是当我在 iOS 15.1 或 15.2 中运行它时,相同的代码需要 0.63 秒才能执行。

有谁知道为什么在新的iOS版本中需要很长时间?任何帮助,将不胜感激。

4

0 回答 0