在上一关里,我们能把数组里的元素附加到另一个数组里了。但是有个情况,如果,我们引用的元素在原来数组里是没有的怎么办?
让我们观察一下原来的代码里有什么状况
出现如下提示:
而我们原来的数组里的blu的个数是多少了?
只有9个blu,而代码里却出来个10,多了一个,当然执行不了,所以我们要对它进行修改。
代码如下:
var teamBlu: [Character] = []
// 注意数组中有多少个 Blu 的实例。
for i in 1...9 {
teamBlu.append(Character(name: .hopper))
}
// 在第 4 行中的每一列放置 Blu。
var columnPlacement = 0
for blu in teamBlu {
world.place(blu, at: Coordinate(column: columnPlacement, row: 4))
columnPlacement += 1
}
// 查找索引超出范围错误。
teamBlu[0].jump()
teamBlu[2].collectGem()
teamBlu[4].jump()
teamBlu[6].collectGem()
teamBlu[8].jump()
//teamBlu[10].collectGem()
其实很简单,我们只要注释掉这一行代码就行了。
再执行一下,看看吧。