var persons = [Dictionary<String, String>()]
println(persons.count)
打印1
。我发现数组在初始化时有一个空的字典,但有没有办法避免这种情况,并且有0个元素而不是1个?后来我需要能够做到:斯威夫特:字典阵列初始化后计数为1,但应该有0
persons.append(["firstName": "Foo", "lastName": "Bar"])
任何想法?
var persons = [Dictionary<String, String>()]
println(persons.count)
打印1
。我发现数组在初始化时有一个空的字典,但有没有办法避免这种情况,并且有0个元素而不是1个?后来我需要能够做到:斯威夫特:字典阵列初始化后计数为1,但应该有0
persons.append(["firstName": "Foo", "lastName": "Bar"])
任何想法?
通过使用这样的:
[Dictionary<String, String>()]
要创建一个元素Dictionary<String, String>()
正确的方法是在方括号后移动将括号内的数组:
[Dictionary<String, String>]()
声明是一个Dictionary<String, String>
类型的数组,并将其实例化。
创建的等效方法是:
Array<Dictionary<String, String>>()
只是以外的地方括号:
var persons = [Dictionary<String, String>]()
+1作品,谢谢! – 2014-11-04 13:26:59
它不应该是
var persons = Dictionary<String, String>()
println(persons.count)
或
var persons = [String : String]()
println(persons.count)
但不能在同一时间两种语法?
是不是在http://stackoverflow.com/a/26735091/1187415驳倒回复您刚才的问题?你是否正确地复制了建议的代码? – 2014-11-04 13:27:02
@MartinR你的权利,但正如我写这个问题,我认为这是一个不同的问题。我们可能会关闭它。 – 2014-11-04 13:33:45
我感到内疚......这是我回答了另一个问题,我应该注意到,考虑到答案几乎相同。 @MartinR,你认为我应该在这里删除我的答案吗? – Antonio 2014-11-04 14:16:32