【发布时间】:2016-11-01 10:48:28
【问题描述】:
我已经更新到 XCode 8,现在我需要将我的代码从 Swift 2 转换为 Swift 3。
之前,当我想将NSDictionary转换为Dictionary时,我只是写了以下内容:
let post_paramsValue = post_params as? Dictionary<String,AnyObject?>
其中post_params 是NSDictionary。
但是现在使用 Swift 3,我收到了这个错误:
NSDictionary is not convertible to Dictionary
为什么?有什么变化?
编辑 1
我还尝试了以下方法:
let post_paramsValue = post_params as Dictionary<String,Any>
但这给出了这个错误:
编辑 2
我还尝试了以下方法:
let post_paramsValue = post_params as Dictionary<String,Any>
我声明NSDictionary而不是NSDictionary!,但它不起作用;我收到了这个错误:
编辑 3
我还尝试了以下方法:
let post_paramsValue = post_params as Dictionary<String,Any>!
但是我收到了这个错误:
【问题讨论】:
-
@UmairAfzal 感谢您的评论,但为什么我需要使用循环遍历字典,这不方便,为什么苹果需要让事情变得更难?
-
嗯,我不知道为什么,你试过吗?它是否有效?
-
@UmairAfzal 我没有尝试过,我很确定它会起作用,但这并不方便。我需要用最好的方法来做。谢谢
标签: swift dictionary nsdictionary objective-c-swift-bridge