【发布时间】:2023-03-08 09:14:01
【问题描述】:
我创建了一个多维数组,但是一旦我尝试在特定索引处向它添加值,它就会崩溃并显示index out of range 消息。我认为这与我初始化数组的方式有关 - 我必须更具体地了解它可以存储的内容等。在这个线程:Filling the Multidimensional Array in Swift 有人建议我应该像这样初始化数组(显然修改为我的目的):
var array: [[Int]] = Array(count:N, repeatedValue:Array(count:N, repeatedValue:0))
但我没有让它工作,也没有正确理解它。下面是我的代码。它在最后一行代码崩溃。
var multiArray = [[Tile]]()
var gb = gameBoard.frame.width/4
for xItem in 0...3 { //DRAW TILE ON X AXIS
for yItem in 0...3 { //DRAW TILE ON Y AXIS
//CREATES A VARIABLE FOR TILE WITH PROPERTIES
tileView = Tile(frame: CGRect(x: (CGFloat(xItem) * gb), y: (CGFloat(yItem) * gb), width: gb, height: gb))
gameBoard.addSubview(tileView) //DRAWS TILE ONTO PARENT VIEW
multiArray[xItem][yItem] = tileView //CRASHES HERE WHEN TRYING TO ADD TO INDEX
}
}
【问题讨论】:
标签: swift for-loop multidimensional-array append