以内存有效的方式比较两组数据

时间:2015-04-08 21:49:39

标签: ios swift

我正在使用播客应用。一些播客有数百集,所有这些都保存在核心数据中。

我想在发布时刷新应用程序的数据,这意味着我需要解析所有的Feed,最后得到一个从互联网解析的剧集列表和核心数据中保存的剧集列表。我想比较两组数据,以便为核心数据添加新的剧集。这种记忆效率最好的方法是什么?

我只想考虑使用for in循环。

谢谢

1 个答案:

答案 0 :(得分:1)

for循环对于从服务器收集要比较的内容不应该太糟糕。通常这是迭代的最快方法。然而,在获得比较器之后,下一步有点不同,因为核心数据是一种特殊的品种。你几乎肯定不想只是从核心数据中获取所有内容并再次快速迭代进行比较。您可能希望查看使用fetchRequest并包含谓词来检查从服务器返回的数据。查找播客的一些属性,与您的获取请求相比,这些属性并不昂贵。存储在核心数据和服务器上的字符串或数字ID可以很好地工作。如果发布日期是唯一的,也可以正常工作。显然,不要尝试比较像音频数据那样疯狂昂贵的东西,并确保它是独一无二的。