我正在使用框架,必须为我的项目更改一些内容。
原作是
var tree:FBQuadTree? = nil
...
if tree == nil {
tree = FBQuadTree()
}
我总是需要定制数量的树木。所以我的考虑是我为此使用了数组。
var tree:[FBQuadTree?] = []
...
if tree[number] == nil {
tree[number] = FBQuadTree()
}
但我不知道如何填充我的新树阵列。当然,我可以做到。像这样:
let element:FBQuadTree?
layersTree.append(element)
好的,但我的问题是元素数量不是静态的。所以有时只有一个元素,有时甚至更多。
这可能是我想做的吗?
整个事情:
var array:[FBQuadTree] = []
//fill
for i in 0..<MyDynamicSize {
array.append(//how to fill?)
}
//give new values
for i in 0..<MyDynamicSize {
array[i] = FBQuadTree()
}
答案 0 :(得分:0)
如果您只想尝试Array
个myDynamicSize
个FBQuadTree
个实例,可以使用init(repeating:count:)
。
var array = [FBQuadTree](count: myDynamicSize, repeatedValue: FBQuadTree())
旁注:按照惯例,类型以大写字母开头,而变量名称以小写字母开头。所以myDynamicSize
,而不是MyDynamicSize
答案 1 :(得分:-1)
请试试这个
var array:[FBQuadTree?] = []
//fill
for i in 0..<MyDynamicSize {
array.append(nil)
}