在Swift 2.3中,我有以下代码:
func getMyName() -> String {
return NSUserDefaults.standardUserDefaults().objectForKey("account")!["name"] as! String
}
现在,我正在尝试将此代码转换为Swift 3,但我正在努力解决此错误:
键入'任何'没有下标成员
这是我迁移的代码:
func getMyName() -> String {
return UserDefaults.standard.object(forKey: "account")!["name"] as! String
}
答案 0 :(得分:2)
UserDefaults有一个名为dictionaryForKey的方法:
func getMyName() -> String {
return UserDefaults.standard.dictionary(forKey: "account")?["name"] as? String ?? ""
}