在我的应用程序中,我必须从核心数据请求获取的数组中的 NSString 数组中搜索字符串。获取的数组包含大约 30,000 个条目(并且肯定会增长),而字符串数组最多可以包含数十万个字符串。 我现在要做的是从核心数据存储中选择所有字符串,然后循环遍历字符串数组,创建一个 NSPredicate 并使用它来过滤核心数据获取的数组。 我想,如果我事先对两个数组进行排序,就可以缩小每个后续搜索的范围,但是是否有可能使用谓词从某个位置开始搜索数组?
最诚挚的问候, 蒂莫菲。
最佳答案
您不想从核心数据中获取所有字符串。它很慢并且占用大量内存。只需使用 NSPredicate 过滤出您想要的字符串,给它 NSFetchRequest 并仅获取您想要的结果。您还可以将 NSSortDescriptor 添加到 NSFetchRequest 以对结果进行排序。
关于cocoa - 核心数据,排序搜索——可能吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5374795/