Swift3 Swift 3-不再允许申报

Swift3 Swift 3-不再允许申报,swift3,Swift3,我有这段代码(我相信旧的2.3版本使用了NSDictionary,尽管在修复了前1000个转换问题后我有点困惑): Xcode声明错误 nil无法初始化指定的字典 并建议使用diciary??? 有人能解释为什么最初的声明不再有效吗?如果需要,最好的转换方法是什么?你可以说它是什么类型的字典,也就是说,指定它的键的类型和它的值的类型,例如[String:String]?或[String:Any]?或类似的 与可空NSDictionary相对应的最通用的可能类型是[AnyHashable:Any]

我有这段代码(我相信旧的2.3版本使用了NSDictionary,尽管在修复了前1000个转换问题后我有点困惑):

Xcode声明错误

nil无法初始化指定的字典

并建议使用
diciary???


有人能解释为什么最初的声明不再有效吗?如果需要,最好的转换方法是什么?你可以说它是什么类型的字典,也就是说,指定它的键的类型和它的值的类型,例如
[String:String]?
[String:Any]?
或类似的


与可空NSDictionary相对应的最通用的可能类型是
[AnyHashable:Any]?
。但最好尽可能具体。

您必须说明它是什么类型的词典,也就是说,指定其键的类型及其值的类型,例如
[String:String]?
[String:Any]?
或类似内容


与可空NSDictionary相对应的最通用的可能类型是
[AnyHashable:Any]?
。但最好尽可能具体。

谢谢。我现在已经包含了更多的代码。我将尝试修复代码“var attr_opt:[FileAttributeKey:Any]?=nil;”谢谢。我现在已经包含了更多的代码。我将尝试将代码修复为“var attr_opt:[FileAttributeKey:Any]?=nil
var attr_opt: Dictionary? = nil;
do { 
  attr_opt = try FMainFileManager.aributesOfItem(aPath: APath);
}
catch {
}