如何检查字段类型是否为Any?NSNull为零

Sno*_*bie 5 swift swift3

我实际上正在尝试在Xcode8.1上使用Swift3解析Json对象。这是我的代码:

if let objData = objJson["DATA"] as! NSDictionary? {
    var msg: String = ""
    if let tmp = objData.object(forKey: "Message") { 
        msg = tmp as! String
    } else {
        print("NIIILLLLL")
    }
}
Run Code Online (Sandbox Code Playgroud)

我收到此错误消息:Could not cast value of type 'NSNull' (0x4587b68) to 'NSString' (0x366d5f4)在此行msg = tmp as! String

我不明白为什么会收到此错误,因为tmp的类型是Any,它应该显示打印内容而不是转换tmp as! String

感谢您的帮助,

Rya*_*yan 4

您可以在let.

if let tmp = objData.object(forKey: "Message") as? String { 
    msg = tmp
}
Run Code Online (Sandbox Code Playgroud)