如何解决正在寻找针对Swift“歧义使用'objectforKey :)'”的修复程序
我继承了一些我想编译的Swift代码。
以下两行会产生“对象(forKey :)的歧义使用”错误。
let selectorString: String = (req as AnyObject).object(forKey: "selectorString") as! String
let args = (req as AnyObject).object(forKey: "arguments") as! NSArray
错误突出显示req as AnyObject
是罪魁祸首。
我在S.O.上发现了类似的问题,但是似乎没有一个解决这个问题的方法。我可能错过了搜索结果中的某些内容。
我希望这是一个简单的修复程序,希望能对您有所帮助。
解决方法
一切取决于req
是什么。如果可以将其转换为AnyObject并响应object(forKey:)
,则您的代码将编译并运行。例如:
let req : [String:Any] = ["selectorString":"hey","arguments":["ho"]]
let selectorString: String = (req as AnyObject).object(forKey: "selectorString") as! String
let args = (req as AnyObject).object(forKey: "arguments") as! NSArray
但是,如果无法将req
强制转换为AnyObject,则会出现编译错误。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。