我有 NSArray(),它包含名称,但有重复的名称,我该如何删除它们?
在解析查询后将对象添加到 NSArray 及其副本
var names = NSArray()
let query = PFQuery(className: "test")
query.whereKey("receivers", equalTo: PFUser.currentUser()!.username!)
query.findObjectsInBackgroundWithBlock {
(objects, error) -> Void in
if error == nil {
self.names = objects!
let set = NSSet(array: self.names as [AnyObject])
print(objects!.count)
// count is 4
// database looks like this (justin , kevin , kevin , joe)
最佳答案
如果您的名称是字符串,您可以从数组创建 NSSet
,它只会有不同的名称。
let names = ["John", "Marry", "Bill", "John"]
println(names)
let set = NSSet(array: names)
println(set.allObjects)
打印:
"[John, Marry, Bill, John]"
"[Bill, John, Marry]"
更新#1
对于有问题的新信息(代码片段),它可能看起来像这样
var set = Set<String>()
for test in objects as [Test] {
set.insert(test.sender)
}
self.names = Array(set)
关于swift - 如何从 NSArray 中删除重复的对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32123820/