Swift2 从字典向字符串对象快速赋值

Swift2 从字典向字符串对象快速赋值,swift2,nsstring,nsdictionary,Swift2,Nsstring,Nsdictionary,我正在使用AnyObject类型的swiftdictionary,读取特定键的值,并将其分配给如下字符串对象 contactObject.lastName = requestDict.objectForKey("lastName") as! String 我的问题是,当时我的应用程序崩溃时,字典中没有键“lastName”,所以我添加了检查以避免崩溃,但我想知道如何从字典中获取键“lastName”的可选值,因为我知道swift获取可选值的功能 所以,我如何避免在字典中添加检查键,然后读取值并

我正在使用
AnyObject
类型的swift
dictionary
,读取特定键的值,并将其分配给如下字符串对象

contactObject.lastName = requestDict.objectForKey("lastName") as! String
我的问题是,当时我的应用程序崩溃时,字典中没有键“lastName”,所以我添加了检查以避免崩溃,但我想知道如何从字典中获取键“lastName”的可选值,因为我知道swift获取可选值的功能

所以,我如何避免在字典中添加检查键,然后读取值并将其分配给string对象

任何帮助都是值得感激的


谢谢

我不太清楚你在问什么。如果您试图从[String:AnyObject]的字典中获取lastName并将其转换为字符串,我建议您这样做。它只会在它存在时分配它

如果让lastName=requestDict[“lastName”]as?串{
contactObject.lastName=lastName
}


强制展开总是危险的。使用if-let和guard-let语句来防止在展开选项时错误传播。

您应该使用SwiftyJSON库(外部框架),它非常干净,不需要像ios内置系统那样进行类型检查

对于SwiftyJSON,您所要做的就是

contactObject.lastName = requestDict["lastName"].stringValue
它将键的值转换为字符串本身。 如果字典lastname不包含任何内容,那么SwiftyJSON将使用“”,这非常好

要创建阵列,可以使用以下方法:

array=dictionary[“contactObjects”]。arrayValue

要了解更多信息,只需google Swifty JSON并打开github页面

如果可以使用CocoaPods,那么使用它所要做的就是创建一个pod文件并添加pod