首页 > 解决方案 > 名称更改的 SKSpriteNode 数组?

问题描述

我对使用数组相当陌生,并且在 swift 游乐场中使用以下代码:

var array = [SKSpriteNode]()
let sprite = SKSpriteNode()

sprite.name = "off"
print(sprite.name!) // "off"
array.append(sprite)
sprite.name = "on"
print(sprite.name!) // "on"

for i in array {
print(i.name!) // "on" ???
}

精灵的名称是“关闭”。然后我将这个精灵添加到数组中。接下来,我将精灵的名称更改为“on”。

当我在数组中使用 for 循环检查精灵的名称时,它的名称是“on”吗?

为什么是这样?我认为数组只是保存信息,因此数组中的 sprite.name 将是我添加时的 sprite.name 吗?还是它们有联系?更改数组外的 sprite.name 是否也会更改数组内的 sprite.name?

对不起,如果我不完全理解这一点。

谢谢!

标签: arraysswiftxcodeloopssprite-kit

解决方案


推荐阅读