在swift中实现一些firebase代码,我需要将一个局部变量提升为一个类属性,但我不知道要声明它的类型。
var myInfo:Any //what type should this be declared as? [String: Any]? Dictionary or NSDictionary?
self.myInfo = ["uid": "xyz", "neighborhoodId": "sesame street", "avatar":[],"location":[]]
我应该将myInfo的类型声明为什么?
这是我将myInfo
传递给设定值的Firebase方法:
答案 0 :(得分:1)
您可以将myInfo
声明为NSDictionary
,但Swift的做法是将myInfo
声明为:
var myInfo:[String: AnyObject] = [:]
[:]
创建一个空字典(0键/值对)作为myInfo
的初始值。然后你可以稍后重新分配它:
myInfo = ["uid": "xyz", "neighborhoodId": "sesame street", "avatar":[],"location":[]]
或者,您可以像这样创建和初始化myInfo
:
var myInfo = [String: AnyObject]()
这具有相同的效果,这只是你使用的风格和品味的问题。您将看到两种初始化样式。