swift 关于随机数

Exploit...水

Exploit...水

发表于 2016-07-23 20:30:12
内容来源: 网络
swift 关于随机数
   //1:下面是使用arc4random函数求一个1~100的随机数(包括1和100)
        let randomNumber:Int = Int(arc4random() % 100) + 1


        //2:下面是使用arc4random_uniform函数求一个1~100的随机数(包括1和100.
        //func arc4random_uniform(_: UInt32) -> UInt32.接受一个 UInt32 的数字 n 作为输入,将结果归一化到 0 到 n - 1 之间。只要我们的输入不超过 Int 的范围,就可以避免危险的转换:
        let randomNumberTwo:Int = Int(arc4random_uniform(100))+1

        // 如果想指定区间的最小值(如随机数区间在[5, 100)
        // let max: UInt32 = 100
        // let min: UInt32 = 5
        // arc4random_uniform(max - min) + min

        //推荐使用函数
        for _ in 0...100 {
            print(randomInRange(1...6))
        }

        //最佳实践当然是为创建一个 Range 的随机数的方法,这样我们就能在之后很容易地复用,甚至设计类似与 Randomable 这样的接口了:
    func randomInRange(range: Range) -> Int {
        let count = UInt32(range.endIndex - range.startIndex)
        return  Int(arc4random_uniform(count)) + range.startIndex
    }




                            
用户评论
开源开发学习小组列表