我要遍历一组篮球运动员,他们的ID等于某个运动员的ID。然后,我想将+1添加到播放器对象的fouls
属性中。
self.match.matchState.homePlayers.first{$0.id == toPlayer.id}?.fouls += 1
我有错误
变异运算符的左侧不可更改:函数调用返回不变的值
fouls
属性是一个可选的整数。 var fouls: int?
即使当我将Player
结构更改为类类型时,我仍然遇到另一个错误。
不能将不变值作为inout参数传递:函数调用返回不变值
那我应该如何循环对象数组并更改其中的某个属性?
答案 0 :(得分:0)
我将Player
的类型从结构更改为类
然后我找到了一种方法来以这种方式更新Player
对象fouls
属性,并且它现在可以正常工作而没有错误
if toPlayer.fouls == nil {
self.match.matchState.homePlayers.first{$0.id == toPlayer.id}?.fouls = toPlayer.fouls! + 1
}