启动字典的空Swift数组

启动字典的空Swift数组,swift,Swift,我目前有: var locations = [ ["location": "New York", "temp": "2 °C", "wind": "3 m/s"] ] 我用locations.append()向其中添加内容。它工作得很好 但是,我不希望有默认条目。所以我试过了 var locations = [] // Not working. var locations = [] as NSArray var locations = [] as NSMutableArray var

我目前有:

var locations = [
    ["location": "New York", "temp": "2 °C", "wind": "3 m/s"]
]
我用
locations.append()
向其中添加内容。它工作得很好

但是,我不希望有默认条目。所以我试过了

var locations = [] // Not working.
var locations = [] as NSArray
var locations = [] as NSMutableArray
var locations = [] as NSDictionary
var locations = [] as NSMutableDictionary
var locations = [:] as ... everything
var locations = [APIData]
感觉好像我什么都试过了,但无论我怎么试,还是会犯无数的错误。在这个阶段,我甚至惊讶于我的默认位置能正常工作


我如何解决这个问题?如何首先将位置设为空?

如果我们假设您尝试使用key
String
和value
String
初始化字典数组,您应该:

var locations: [[String: String]] = []
然后你可以做:

locations.append(["location": "New York", "temp": "2 °C", "wind": "3 m/s"])

如果我们假设您尝试使用键
String
和值
String
初始化字典数组,您应该:

var locations: [[String: String]] = []
然后你可以做:

locations.append(["location": "New York", "temp": "2 °C", "wind": "3 m/s"])

要创建数组或字典,您应该知道所需的类型

您可以声明一个包含字符串数组的变量。要初始化它,可以使用

var array: [String] = [String]()
您可以省略
:[String]
,因为在这种情况下编译器可以自动检测类型

要创建字典,您也可以这样做,但需要同时定义键和值类型:

var dictionary = [String: String]()
现在,您需要的是一个字典数组,因此您需要将两者结合起来以

var arrayOfDictionaries = [[String: String]]()

要创建数组或字典,您应该知道所需的类型

您可以声明一个包含字符串数组的变量。要初始化它,可以使用

var array: [String] = [String]()
您可以省略
:[String]
,因为在这种情况下编译器可以自动检测类型

要创建字典,您也可以这样做,但需要同时定义键和值类型:

var dictionary = [String: String]()
现在,您需要的是一个字典数组,因此您需要将两者结合起来以

var arrayOfDictionaries = [[String: String]]()

变量位置:[[String:String]]=[]?请阅读Swift语言书中的“集合类型”一章。它清楚地演示了如何创建空数组/字典/集。如果您使用的是Xcode,您可以选择单击一个变量来找出它的类型,这将使您在大多数情况下都能找到它。在本例中,
[[String:String]]
。一种初始化方法是
var locations=[[String:String]]()
。var locations:[[String:String]]=[]?请阅读Swift语言书中的“集合类型”一章。它清楚地演示了如何创建空数组/字典/集。如果您使用的是Xcode,您可以选择单击一个变量来找出它的类型,这将使您在大多数情况下都能找到它。在本例中,
[[String:String]]
。一种初始化方法是
var locations=[[String:String]]()
@LeoDabus-奇怪,为什么要编辑?原始代码很好。完成同一件事有两种不同的方法。@LeoDabus-好奇,为什么要编辑?原始代码很好。完成同一件事的两种不同方式。