如何从 Swift 2.0 获取子数组

How to get a subArray from Swift 2.0

我一直在尝试寻找在 Swift 中获取子数组的正确方法,但我在这里遗漏了一些东西。此代码不起作用,因为 rowArray.append(row) 抛出一个错误,指出。

Cannot convert value of type 'ArraySlice<Int>' to specified type '[Int]'

我不知道如何从主数组中获取 [Int] 或将 ArraySlice 转换为 [Int]。我猜我遗漏了一些简单的东西,但似乎无法从文档中找到答案。

var rowArray = [[Int]]()

var rangeStart = 0
let rangeLength = mapWidth

for var index = 0; index < mapHeight; ++index{
    rangeStart = tileIDs.count - ((index + 1) * mapWidth )

    let row : [Int] = tileIDs[rangeStart...rangeStart+rangeLength]
    rowArray.append(row)
}
rowArray.append(row)

使用Array()ArraySlice<Int>转换为[Int]:

let row : [Int] = Array(tileIDs[rangeStart...rangeStart+rangeLength])