【发布时间】:2017-02-24 13:38:38
【问题描述】:
我是 swift 新手。 我想知道如何使用 swift 在 for-each 循环中修改对象。 例如:
结构 MyCustomObject { var customValue:字符串? }
让 myArray: [MyCustomObject?]
for anObject:MyCustomObject in myArray {
anObject.customValue = "Hello" // <---Cannot assign to property: 'anObject' is a 'let' constant
}
所以,如果我想在 for 循环中更改对象值该怎么办。 我厌倦了在一个对象之前添加“var”,但它不起作用! (数组中的对象仍然保持不变。)
对于目标 C 来说,这很容易,
NSMutableArray * myArray = [NSMutableArray 数组];
for (MyCustomObject * object in myArray)
{
object.customValue = "Hello"
}
【问题讨论】:
-
myArray是let还是var? -
myArray 是一个“让”。枚举您的数组并使用索引更改数组元素
-
您希望更改永久保留在您的阵列中,还是希望它们在循环期间只是临时的?
-
我想永久更改“anObject.customValue”!