我们学会了数组里的元素可以不仅仅是数字,还可以是函数。
现在我们要对元素进行一种排序。
我们可以先看一下数组里有什么元素?
Character,Portal,Gem,传送门和宝石,我们不需要。就要对它们进行移除,也叫删除,使用的是.remove()的方法。
由于宝石是最后一个元素,我们还可以使用.removeLast()的方法。
然后,要添加一个元素,就是Expert,因为它比.blu高,比.hopper矮,所以,它要在中间,在中间,就不能用之前我们学过的.append()的方法了,为什么?因为.append()是把新添加的元素放在最后面,而现在我们本节要学的.insert()方法,是插入的方法。可以插在两个元素之间。
代码如下:
characters = [
Character(name: .blu),
Portal(color:red),//red == color:#colorLiteral(red: 0.17647058823529413, green: 0.011764705882352941, blue: 0.5607843137254902, alpha: 1.0),复制不出来,用短的代替表示一下。
Character(name: .hopper),
Gem()
]
// 移除传送门。
characters.remove(at: 1)
// 移除宝石。
characters.removeLast()
// 插入专家。
characters.insert(Expert(), at: 1)
var rowPlacement = 0
for character in characters {
world.place(character, at: Coordinate(column: 1, row: rowPlacement))
rowPlacement += 2
}
执行后:
如果我们加上一句characters.insert(Expert(), at: 2)试试。
是不是发现了什么?