I have an NSSet of Strings, and I want to convert it into [String]. How do I do that?
问问题
12557 次
4 回答
9
If you have a Set<String>
, you can use the Array constructor:
let set: Set<String> = // ...
let strings = Array(set)
Or if you have NSSet, there are a few different options:
let set: NSSet = // ...
let strings1 = set.allObjects as? [String] // or as!
let strings2 = Array(set as! Set<String>)
let strings3 = (set as? Set<String>).map(Array.init)
于 2015-07-27T20:22:01.407 回答
2
You could do something like this.
let set = //Whatever your set is
var array: [String] = []
for object in set {
array.append(object as! String)
}
于 2015-07-27T20:16:51.977 回答
2
let set = NSSet(array: ["a","b","c"])
let arr = set.allObjects as! [String]
于 2015-07-27T20:21:30.827 回答