我有这段代码(从另一种语言移植,因此命名约定有些不同,但是请暂时忍受)
var FDefaultsList: NSDictionary = [String:String]();
let TmpKey: String = TmpKeyValue[0];
let TmpValue: String = TmpKeyValue[1];
if (TmpKey != "") && (TmpValue != "") {
//let TmpAnyObjectValue: AnyObject? = TmpValue;
//FDefaultsList.setValue(TmpAnyObjectValue, forKey: TmpKey);
FDefaultsList.setValue(TmpValue, forKey: TmpKey);
}
但是,无论我使用哪种setValue变体,对setValue的调用都会引发错误(据我所知,这没有意义)并退出应用程序(Xcode编辑器用于AppDelegate类:UIResponder,UIApplicationDelegate)
我想我使用NSDictionary错误?我正在尝试读取文本文件,其中每一行都是键=值字符串
您应该声明一个实际的NSMutableDictionary,而不是强制转换为NSDictionary。
而且您可以使用下标,该下标比setValue
(实际上应该是setObject
)要简单一些:
var FDefaultsList = NSMutableDictionary()
let TmpKey: String = "a"
let TmpValue: String = "b"
if TmpKey != "" && TmpValue != "" {
FDefaultsList[TmpValue] = TmpKey
}
更加“迅速”的版本可能是:
var defaultsList = [String:String]()
let tmpKey = "a"
let tmpValue = "b"
if !tmpKey.isEmpty && !tmpValue.isEmpty {
defaultsList[tmpValue] = tmpKey
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句