我需要数不。来自核心数据中的集合中的对象满足某个标准。
(例如,计算不同部门的员工)。
我的问题有两种解决方案:
(1)仅在一个请求中获取集合并在本地过滤数组 对于使用NSPredicate的每个部门
(2)直接对数据执行多个NSFetchedRequests
问题是哪种解决方案最快并占用最少的内存,因为仅用于检测目的,并且在{ {1}}
反问题:如果是(1) - 这是过滤数组的最佳方法吗?手动循环和计数或behavior/UI.
?
P.S:
一个。部门名称是我所知道的。 (它实际上是一个枚举)
湾收集很小 - 最多50
答案 0 :(得分:0)
1是最快的并占用大部分内存。 2将使用最少的内存,但可能需要更长的时间。
但是,并非总是如此。如果您的单个获取请求的数量将包含许多相同的员工数据集,其他获取请求也将返回,那么它甚至可能是相反的方式。但是当你拿到部门时,情况并非如此。
对于小型系列来说,无论如何它可能没什么区别。
计数问题:这也取决于。但是,我会选择谓词,因为如果集合增长,这将保存以供将来使用。