隨機數生成
arc4random_uniform(someNumber: UInt32) -> UInt32
這將為你提供 0 到 someNumber - 1 範圍內的隨機整數。
UInt32 的最大值是 4,294,967,295(即 2^32 - 1)。
例子:
-
硬幣翻轉
let flip = arc4random_uniform(2) // 0 or 1 -
骰子卷
let roll = arc4random_uniform(6) + 1 // 1...6 -
十月的隨機日
let day = arc4random_uniform(31) + 1 // 1...31 -
20 世紀 90 年代的隨機年份
let year = 1990 + arc4random_uniform(10)
一般形式:
let number = min + arc4random_uniform(max - min + 1)
number,max 和 min 是 UInt32。
筆記
arc4random存在輕微的模偏差,因此首選arc4random_uniform。- 你可以將
UInt32值轉換為Int,但只要注意超出範圍。