Swift 中的错误:(键:AnyObject,值:AnyObject)' 不能转换为 'NSDictionary'
Posted
技术标签:
【中文标题】Swift 中的错误:(键:AnyObject,值:AnyObject)\' 不能转换为 \'NSDictionary\'【英文标题】:Error in Swift : (key: AnyObject, value: AnyObject)' is not convertible to 'NSDictionary'Swift 中的错误:(键:AnyObject,值:AnyObject)' 不能转换为 'NSDictionary' 【发布时间】:2015-04-23 16:36:55 【问题描述】:我有一个错误:错误:(键:AnyObject,值:AnyObject)'不可转换为'NSDictionary'。请帮我解决这个问题,我尝试了不同的解决方案,但都没有成功。
func getLastDayRatesData() -> NSDictionary?
if var rates = getRatesDataFromPlist()
if let lastUpdated = rates["last_updated"] as? NSDate
let ratesWithoutDate: NSMutableDictionary = rates as! NSMutableDictionary
var sortedByDateRates = sorted(ratesWithoutDate) ($0.0 as! String) > ($1.0 as! String)
if let latestRates = sortedByDateRates.first
return latestRates // Error: (key: AnyObject, value: AnyObject)' is not convertible to 'NSDictionary'
return nil
【问题讨论】:
粘贴更多代码? getRatesDataFromPlist() 里面是什么? 您尝试对字典进行排序,结果是键值元组数组。您不能对字典进行排序。 谢谢。我找到了解决办法。 您好 Stillfinder,欢迎来到该网站,很高兴您找到了解决方案。您可能应该使用解决方案编辑问题,添加自己的答案或完全删除问题。通过解释问题或在不可能的情况下帮助社区,然后删除问题,而不是让网站混乱(即没有有用答案的问题)。如果您在 SO 上找到答案,请指向该解决方案的链接并进行描述。不要留下没有接受答案的混乱问题。 【参考方案1】:只是将您的代码更改为
func getLastDayRatesData() -> (AnyObject, AnyObject)?
一切正常。
【讨论】:
以上是关于Swift 中的错误:(键:AnyObject,值:AnyObject)' 不能转换为 'NSDictionary'的主要内容,如果未能解决你的问题,请参考以下文章
尝试修复 Swift 3 错误;无法使用“String”类型的索引为“[[String:AnyObject]]”类型的值下标[关闭]
Swift 2:“Set<UITouch>”类型的值没有成员“anyObject”[重复]
为啥在 Swift 中的铸造成本如此之高,而不是……将其保留为 AnyObject?