如何从arc4random中排除特定的整数

Zab*_*lah 0 arc4random swift

我想得到一个随机数,arc4random_uniform()但不包括像这样的数组中的数字

var numbersArray = [8,15,10,3,7]
var randomNumber = arc4random_uniform(20)
Run Code Online (Sandbox Code Playgroud)

如果arc4random_uniform()给我任何数字,numbersArray我希望它得到一个不是来自的数字numbersArray

我试过这个

func getRandomGroup() -> Int {
    for numbers in numbersArray {
        if numbers == randomNumber {
             var randomNumber = arc4random_uniform(20)
        }
    }
    return randomNumber
}
Run Code Online (Sandbox Code Playgroud)

但它似乎没有奏效

Chr*_*ich 5

Swift 2.0

var numbersArray = [8,15,10,3,7]
var randomNumber : Int
repeat {
    randomNumber = Int(arc4random_uniform(20))
} while numbersArray.contains(randomNumber) 
print(randomNumber)
Run Code Online (Sandbox Code Playgroud)

在Swift 1.x中它就是这样做的