可以" as"关键字用于显式声明键/值的类型?

时间:2017-10-12 17:38:47

标签: swift dictionary

使用Firebase为用户保存唯一ID,用户名和电子邮件,这是登录过程的一部分。 在创建用户时,数据片段保存在字典中,并且在字典声明的最后,它具有" as [String: Any]"

   let values = ["username": username, "email": email, "id": uid!] as [String: Any]

据我所知,as关键字用于从一种类型向下转换为另一种类型,但这里似乎只是说明了键和值的类型。那是对的吗?我认为我错过了一些东西,好像情况一样,编译器推断是不可能的,因此as有点多余?

这是as [String: Any]只是为了清楚吗?

1 个答案:

答案 0 :(得分:1)

编译器可以自己推断values的类型,但在某些情况下,特别是[String: Any]个对象,可以显式声明类型可以改善编译时间significantly

在这种情况下,as [String: Any]可以是清晰度和性能。