random - Swift 3(Xcode 8 beta 1)中的种子随机数等价于什么

标签 random srand swift3

我需要在我的应用程序的每次执行中启动相同的随机数列表。 srand/rand 不存在了。那我该怎么办呢?

private extension Array {
    private func randomValues(_ seed: UInt32, num: Int) -> [Element] {
        srand (seed)

        var indices = [Int]()
        indices.reserveCapacity(num)
        let range = 0..<self.count
        for _ in 0..<num {
            var random = 0
            repeat {
                random = randomNumberInRange(range)
            } while indices.contains(random)
            indices.append(random)
        }

        return indices.map { self[$0] }
    }

最佳答案

你可以使用 Swift3 中的 srand48(seed)drand48()

关于random - Swift 3(Xcode 8 beta 1)中的种子随机数等价于什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39496811/

相关文章:

swift - 在 Swift 3 中,如何在 Pickerview Controller 中更改所选图像的分辨率

javascript - 创建一个数组并检查它

c++ - 从时间生成 'random' 数字?

c - 无法随机洗牌

c++ - 以随机顺序打印整数数组而不在C++中重复

ios - 用户默认保存开关状态

iphone - 生成随机字符串的代码会创建相同的字符串序列

javascript - 随机数,随机颜色循环

php - 以相同方式播种的 rand() 会产生不同的结果

ios - 如何为 Storyboard初始化的开关按钮设置默认 boolean 值