2014-06-17 139 views

回答

44

之間的值試試這個

let randomNumber = arc4random_uniform(40) + 10 
println(randomNumber) 

一般形式

let lower : UInt32 = 10 
let upper : UInt32 = 50 
let randomNumber = arc4random_uniform(upper - lower) + lower 
println(randomNumber) 
+2

爲了在此處允許50個結果(因爲'arc4random_uniform(40)'將返回0到39之間的整數),爲'upper-lower'加一個' – fqdn

+0

謝謝...它確實有效。 。 – ChenSmile

+0

@ackStOverflow依賴OP需要'1..50'或'1 ... 50' –

7

如果你想要一個具有簡單參數的可重用函數:

func generateRandomNumber(min min: Int, max: Int) -> Int { 
    let randomNum = Int(arc4random_uniform(UInt32(max) - UInt32(min)) + UInt32(min)) 
    return randomNum 
}