加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

Swift - Swift生成随机数

发布时间:2020-12-14 02:12:57 所属栏目:百科 来源:网络整理
导读:在Swift中生成随机数有很多方法可以达到目的 这里介绍最简单的两种方法,第一种是使用arc4random()函数, 第二种是使用arc4random_uniform()函数 1. func arc4random() - UInt32 arc4random() 如果要生成一个生成在一定范围内的随机整数,可以这么写: func r

在Swift中生成随机数有很多方法可以达到目的

这里介绍最简单的两种方法,第一种是使用arc4random()函数, 第二种是使用arc4random_uniform()函数


1. func arc4random() ->UInt32

arc4random()

如果要生成一个生成在一定范围内的随机整数,可以这么写:

func randomIn(#min: Int,max: Int) -> Int {
    return Int(arc4random()) % (max - min + 1) + min
}
该方法会生成[min,max]范围内的随机整数

如果需要生成随机浮点数,基本思路相同,只不过多了一步

因为arc4random返回值的类型为UInt32,也就是32位整形, 所以其返回的最大值用十六进制表示就是0xFFFFFFFF

所以我们可以这样得到一个[0,1]范围内的随机小数

Float(arc4random()) / 0xFFFFFFFF

 

将生成的小数适配到我们需要的范围中

func random() -> Float {
    return Float(arc4random()) / 0xFFFFFFFF
}
func randomIn(#min: Float,max: Float) -> Float {
    return random() * (max - min + 1) + min
}


2. func arc4random_uniform(_:UInt32) ->UInt32

arc4random_uniform(4)
可以生成[0, 4)的随机整数

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读