Swift3 - ' [String:AnyObject]'不能转换为' [HTTPCookiePropertyKey:Any]'

时间:2016-11-08 12:11:34

标签: ios swift xcode

我是Swift的新手,接管了使用xCode 7.4在swift 2.2中编写的项目。我将它转换为xCode 8和swift3并且只剩下一个编译器错误。请帮忙解决这个问题。

'[String : AnyObject]' is not convertible to '[HTTPCookiePropertyKey : Any]'

以下是令人讨厌的代码行。

let cookie = HTTPCookie(properties: dict as! [String : AnyObject] as! [HTTPCookiePropertyKey : Any])

这会解决吗?

let cookie = HTTPCookie(properties: dict as! [HTTPCookiePropertyKey : Any])

1 个答案:

答案 0 :(得分:1)

对于未指定的字典值,

AnyObject已替换为Swift 3中的Any

由于HTTPCookiePropertyKey(NS)String的类型别名,您可以直接转换类型

let cookie = HTTPCookie(properties: dict as! [HTTPCookiePropertyKey : Any])

甚至可能

let cookie = HTTPCookie(properties: dict)

可行。