Swift:数组遍历 修改数组中指定成员值 关键字 inout

业务需求:

修改给定数组中模型的值

在OC中,遍历查找,然后直接修改model就行了(地址未变)

在swift中,遍历出来的已经是新的对象(地址变了),所以修改后数组并没有修改值

import UIKit

var arr:[Int] = [1,2,3]

print(arr)


func dealDate (paramete:inout Int){
    paramete+=1
}

for var (index,i) in arr.enumerated() {
    if i == 2 {
        dealDate(paramete: &arr[index])
        print(i)
    }
}


print(arr)

输出结果:

[1, 2, 3]
2
[1, 3, 3]

inout 关键字,传入对象地址,方便修改

 

你可能感兴趣的:(Swift)