如何通过NSUserDefaults保存/加载设置类型?

时间:2016-04-02 10:38:03

标签: swift swift2

我正在使用Swift并且具有包含Int:

的Set类型
var setA : Set<Int>

如何使用NSUserDefaults保存/加载此设置类型?

1 个答案:

答案 0 :(得分:2)

Set转换为Array,可将其保存在NSUserDefaults

let arrayA = Array(setA)
NSUserDefaults.standardUserDefaults().setObject(arrayA, forKey:"mySet")

获取数组并将其转换回Set

let arrayA = NSUserDefaults.standardUserDefaults().objectForKey("mySet") as! [Int]
let setA = Set(arrayA)

如果您按Apple建议

注册键/值对
let defaults = NSUserDefaults.standardUserDefaults()
let defaultValues = ["mySet" : [Int]()]
defaults.registerDefaults(defaultValues)

该值永远不会nil,可以安全地展开。