在Swift 3.0中,
UserDefaults()
和UserDefaults.standard
有什么区别吗?UserDefaults()
和UserDefaults.standard
有什么区别吗?UserDefaults - 提供一个新对象
,每个对象都被分配不同的内存,并在对象作用域结束时被解除分配。
UserDefaults.standard - 通过使用类方法standard
来提供单例
对象,该方法接收到的对象在整个应用程序中分配单一内存。
如果您对它们的使用感兴趣,可以参考以下内容:
// Set
UserDefaults.standard.set("YOUR STRING", forKey: "key")
UserDefaults().set("YOUR STRING", forKey: "key")
// Get
UserDefaults.standard.string(forKey: "key")
UserDefaults().string(forKey: "key")
let ud = UserDefault()
let uds = UserDefaults.standard
您可以创建和使用使用方便的“init”方法创建的“UserDefault”的实例,但Foundation文档鼓励开发人员使用可通过“standard”变量访问的单例。