0

我在应用程序中使用核心数据,基本上想知道是否有人知道这两个过程中的哪一个会更快......

我有一个表视图,需要将核心数据中的条目与行匹配,此时我将所有核心数据类放在一个数组中,使用:

NSArray *classArray = (NSArray *)[currentUser myCDClasses];

for(myCDClasses *class in classArray)
{
  if([class class_id] == theIDINeedToMatch)
  {
    myCDClasses *classForThisRow = class;
    break;
  }
}

我想知道的是,根据我需要检索的 ID 进行谓词搜索是否会更快?

我认为通常它必须循环通过的最大项目约为 40。

4

1 回答 1

0

我怀疑你会注意到 40 件商品有什么不同。对于大型数据集,使用谓词可能更快,因为搜索是在 SQLite 级别完成的,并且只有结果加载到内存中,而“循环解决方案”要求您比较的所有对象都是“故障输入” " 并从存储文件中读取。

于 2013-03-14T12:32:18.130 回答