我试图解析字典中的数据。我有代码,目前的作品,但我认为有一个更好的更简洁的方法来做到这一点。可选绑定,然后在swift中转换为可选
我有什么我的字典可以等于
let dictionary:[String:Any] = ["pic":"picture"] //opt1
let dictionary:[String:Any] = ["pic":2] //opt2
let dictionary:[String:Any] = ["pi":"this"] //opt3
这是我目前使用的解析,我想还有待提高数据的代码三个选项。
let _pic = dictionary["pic"]
if _pic != nil && !(_pic is String) {
print("error")
return
}
let pic = _pic as? String
对于每个选项,我想不同的事情发生了:
OPT1
pic:String? = Optional(picture)
OPT2要显示的错误
OPT3
pic:String? = nil
欢呼的答案,我这样做的问题是在我的opt3。这里的东西是我不想在字典中没有正确的键时出现错误。 –
然后你也可以使用if ... else。 –
我已经在代码中做到了这一点。我正在寻找一个改进的更简洁的版本(因为我必须重复这些代码来处理我从字典中解析出来的所有内容)。但是如果不可能做一个更简洁的版本,我会保持它与我有。 –