如何比较 Swift 中的随机数

How to compare random numbers in Swift

我是编程初学者,喜欢玩 Swift 中的 arc4random_uniform() 函数。到目前为止,我正在制作的程序会生成一个 1-10 的随机数,由 UIButton 重新生成。但是,如果下一个生成的数字大于当前保存的数字,我希望初始化为随机数的变量“highest”进行更新。例如,随机数是 6,它存储在 highest 中,如果下一个数字是 8,则最高变为 8。我不知道该怎么做。我已将 UIButton 连接到 IBAction 函数并具有以下代码:

    var randomValue = arc4random_uniform(11) + 1
    highest = Int(randomValue)

    if (Int(randomValue) < highest) {
        // Don’t know what to do
    }

highest初始化为0

每次生成新的随机数时,将最高的值替换为两个数中较大的一个

highest = max(highest, randomValue)

max() 函数是 Swift 标准库的一部分,returns 是两个传入值中较大的一个。

编辑添加

这里有一个 playground,更详细地展示了这一点,包括类型转换:

var highest: Int = 0

func random() -> Int {
    let r = arc4random_uniform(10) + 1
    return Int(r)
}

var randomValue = random()
highest = max(highest, randomValue)

可以看到多次调用持久化最高值。