我的课

class ScoreModel {
    var playerId: Int?
    var holeScores: [HoleScore]?
}

其他类
class HoleScore {
    var holeScore: Int?
}

我有这些类之一是ScoreModel类,它可以具有HoleScore的对象数组
let scoreList = [ScoreModel]()
scoreList[0].holeScores![0].holeScore = 3

当我更新或更改holeScorescoreList[0].holeScores[0]时,它会更改所有scoreList[forAllIndexes].holeScores[0]的代码。我只想为外部数组的给定索引更改内部数组pram,但是每次更新时,它都会更改所有holeScore值。

最佳答案

这会附加相同的对象,因此一个对象的更改会反映给其他对象

var item = HoleScore()

for i in 0...5
{
    item. holeScore = i

    scoreList[0].holeScores.append(item)
}

//

这会附加不同的对象,因此一个对象的更改不会反映给其他对象
for i in 0...5
{
    var item = HoleScore()

    item. holeScore = i

    scoreList[0].holeScores.append(item)
}

关于ios - 对象数组具有对象的进一步内部数组,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/49996646/

10-12 01:29