Swift:字典数组在初始化后计数为1但应该为0

Upv*_*ote 0 swift ios8 swift-dictionary swift-array xcode6.1

var persons = [Dictionary<String, String>()]
println(persons.count)
Run Code Online (Sandbox Code Playgroud)

打印1.我看到数组在初始化时有一个空字典,但有没有办法避免它并且有0个元素而不是1?后来我需要能够做到:

persons.append(["firstName": "Foo", "lastName": "Bar"])
Run Code Online (Sandbox Code Playgroud)

有任何想法吗?

Ant*_*nio 5

通过使用这个:

[Dictionary<String, String>()]
Run Code Online (Sandbox Code Playgroud)

您正在创建一个包含一个元素的数组 Dictionary<String, String>()

正确的方法是在方括号后移动括号:

[Dictionary<String, String>]()
Run Code Online (Sandbox Code Playgroud)

它声明了一个类型数组Dictionary<String, String>,并实例化它.

创建它的等效方法是:

Array<Dictionary<String, String>>()
Run Code Online (Sandbox Code Playgroud)