dav*_*vid 8 dictionary nsdictionary swift objective-c-swift-bridge
我已经更新到XCode 8,现在我需要将我的代码从Swift 2转换为Swift 3.
以前,当我想转换NSDictionary到Dictionary,我只是写了以下内容:
let post_paramsValue = post_params as? Dictionary<String,AnyObject?>
Run Code Online (Sandbox Code Playgroud)
哪里post_params是NSDictionary.
但是现在使用Swift 3,我收到了这个错误:
NSDictionary is not convertible to Dictionary
Run Code Online (Sandbox Code Playgroud)
为什么?改变了什么?
我也尝试过以下方法:
let post_paramsValue = post_params as Dictionary<String,Any>
Run Code Online (Sandbox Code Playgroud)
但是这给出了这个错误:
我也尝试过以下方法:
let post_paramsValue = post_params as Dictionary<String,Any>
Run Code Online (Sandbox Code Playgroud)
但是我收到了这个错误:
vad*_*ian 15
NSDictionary 在Objective-C中始终具有非可选值.AnyObject已经成为AnySwift 3.NSDictionary可以桥接到Dictionarylet post_paramsValue = post_params as Dictionary<String,Any>
Run Code Online (Sandbox Code Playgroud)
如果源NSDictionary是一个可选您可能使用as Dictionary<String,Any>?或as? Dictionary<String,Any>或as! Dictionary<String,Any>或as Dictionary<String,Any>!根据实际类型的NSDictionary