2016-12-04 42 views
0

我想定义一个对象数组。该数组需要有3个空格。在变量初始化时,它们被设置为零,但后来在程序中,它们被填充(它们在被使用之前被填充)。如何定义一个固定大小的可选数组[斯威夫特3]

这是我到目前为止有:

var scrollLayers: [SKNode?]! = [nil, nil, nil] 

而且这工作正常,但如果我有,例如,50点需要进行初始化,我不希望有键入“无,“50次。有没有办法让这个数组有50个大点,并且所有这些点都设置为零?

感谢, 马修

+1

另一个[文档失败(https://developer.apple.com/reference/swift/array )。 “如果你需要一个预先初始化为固定数目的默认值的数组......”它没有得到任何更正。 – matt

+0

@matt感谢链接到文档!如果我要对你说实话,我甚至不知道这个文件存在。尽管还有几次Google搜索,但我仍然对Swift编程超新颖,但我无法弄清楚。再次感谢:) – Mattkx4

+0

该文件是_on your computer_。 – matt

回答

9
var scrollLayers = [SKNode?](repeating: nil, count: 50) 
+0

非可选值的任何选项? –

+1

您无法使用optionals初始化非可选数组,但您可以这样做:var threeDoubles = [Double](重复:0.0,count:3) – nshoute

0

对于那些喜欢这种语法:

var scrollLayers: [SKNode?] = Array(repeating: nil, count: 50)