【发布时间】:2018-04-02 16:08:06
【问题描述】:
我想写一个返回整数列表的函数。整数列表大小和最大随机数将由用户定义,用户将通过函数参数。我的特殊要求是,列表中的整数不能是多余的。
我使用Array的方法:
func getRandomNumbers(maxNumber: Int, listSize: Int)-> [Int]{
var randomNumbers = [Int]()
for _ in 1...listSize{
let randomNumber = Int(arc4random_uniform(UInt32(listSize)))
randomNumbers.append(randomNumber)
}
return randomNumbers
}
问题:有时我用这种方法得到重复的值。
我知道 swift Set 没有重复值。
我使用Set的方法:
func getRandomNumbers(maxNumber: Int, listSize: Int)-> Set<Int>{
var randomNumbers = Set<Int>()
for _ in 1...listSize{
let randomNumber = Int(arc4random_uniform(UInt32(listSize)))
randomNumbers.insert(randomNumber)
}
return randomNumbers
}
问题:有时Set 的大小小于用户定义的大小。
【问题讨论】:
标签: swift random arc4random