从核心数据中获取数据

时间:2016-07-27 11:34:14

标签: ios swift core-data

我从核心数据中获取数据并将其保存在数组中。这个数组是字典的集合。但是数组中有重复的字典。如何在Swift中的nsarray中过滤这些重复的词典?

提前致谢。

2 个答案:

答案 0 :(得分:0)

如果您知道重复词典的数量,可以尝试使用计数器变量。然后一个简单的“如果'声明,即如果计数器== 1 {//做某事}

答案 1 :(得分:0)

如何在Swift中的nsarray中过滤这些重复的词典?

来自ObjC的旧方法仍适用于Swift~您可以利用集合的属性。将所需的值添加到Set中。您可以使用contains方法在将密钥添加到集合之前验证密钥是否存在。由于Set只能包含唯一值,因此它将过滤重复项。完成后,检查Set对象上的allobject。

第二种选择是使用数组上的map或filter函数,使用一些比较逻辑或其他标准来定义唯一性(我不知道你的精确数据集,因此很难提供相关的样本但是通常你可以在UseYourLoaf上看到这篇文章。如果您使用的是Swift 2.2+,您可以尝试使用集合中的forEach功能。

其他参考文献:

搜索SO以获取关键字Swift Set

在SO中搜索关键字Swift Array

Swift Set To Array On SO

Swift Collection Types on Apple Developer

Swift Official Documentation Book from Swift.org