4

我通常使用[String: AnyObject]. 但我注意到 Alamofire 使用[String: Any]. 我在某处读到Any“优于”AnyObject或“包含”的地方AnyObject。但除此之外,我不知道他们之间是否有任何不同。[String: Any]如果我将字典定义为而不是,从长远来看有什么缺点[String: AnyObject]吗?谢谢。

4

1 回答 1

2

任何允许的用途都可以混合使用不同的类型,包括函数和非类类型,例如 Int、String 和 Bool。根据文档,这个数组中的元素是值类型的结构,所以理论上

AnyObject在这些情况下不应该工作。

我们将 AnyObject 用于 Class 类型,因为它们比 Any 更具体一点。但同样,使用 AnyObject 只是一种选择。

您可以在此处找到更多说明。我希望通过此链接后您的所有疑问都将消除

https://medium.com/@mimicatcodes/any-vs-anyobject-in-swift-3-b1a8d3a02e00

于 2018-02-06T07:20:12.307 回答