Swift: 捕获变量的当前值

Swift: Capture Current Value of Variable

我有运行跨一个post帮忙解决这个问题,但是好像不是很清楚。我试图多次捕获变量的值。变量radians是一直在变化的,我想在需要的时候把radians的值保留下来,放到一个数组中。

例子

        var initialRadian = [CGFloat]()
        var radians: CGFloat! = nil

        //Initial Radian Set
        if initialRadian.count == 0 {
            if IsHeld == true {
                initialRadian.append(radians)
            }
        }
        if initialRadian.count == 1 {
            if IsHeld == true {
                initialRadian.append(radians)
            }
        }
        if initialRadian.count == 2 {
            if IsHeld == true {
                initialRadian.append(radians)
            }
        }

我希望在 if 语句运行时捕获 radians 的值。

试试这个,我认为它有效

if initialRadian.count == 0 {
        if IsHeld == true {
            initialRadian.addObject(radians)
        }
    }
   else if initialRadian[1] == nil {
        if IsHeld == true {
            initialRadian.addObject(radians)
        }
    }
    else if initialRadian[2] == nil {
        if IsHeld == true {
            initialRadian.addObject(radians)
        }
    }

我不明白你的代码在做什么。将 CGFloat 的副本保存在数组中以在给定时间捕获其值非常简单。这是一个例子。

var initialRadian = [CGFloat]()
var radians: CGFloat = 7

// save the current value of radians
initialRadian.append(radians)

// modify radians
radians = 49.3

// save the modified value of radians
initialRadian.append(radians)

// modify radians again
radians = -3

// save it again
initialRadian.append(radians)

// the initialRaidan array now holds all the values of radians we saved
for val in initialRadian {
    print(val, terminator: " ") // prints "7.0 49.3 -3.0 "
}