美文网首页
在OC中生成随机数:arc4random()与arc4rando

在OC中生成随机数:arc4random()与arc4rando

作者: Robinone | 来源:发表于2018-11-05 09:41 被阅读0次
    • 在OC 中最简单的方法生成随机数是利用arc4random_uniform函数,具体用法是
    arc4random_uniform (x);
    
    //可以用来生成[0,x)范围内的随机数。可以取到0,最大取到x-1的整数。
    

    实际上,arc4random_uniform()函数,是在arc4random()函数的基础上,内部完成了取模操作。

    • arc4random()函数产生的随机数是0-0x100000000之间,也就是0-(2^32-1)的所有整数。arc4random_uinform(x),是在arc4random()的基础上,完成了对x的取模,也就是数学里的取余数,余数是0-(x-1)的所有整数,包括0和(x-1)。

    举个例子,你需要0-100的随机数,不包括100,则使用

    arc4random_uniform(100);

    当你需要取到0也需要取到100时,不能在结果上直接加1,即arc4random_uniform(100)+1;
    这个时候有个问题,就是0取不到了。

    这时候,你可以用arc4random_uniform(101);

    也就是你将arc4random()生成的随机数,对101取模(余数),这个余数就是0~100的所有整数包括了0和100,就满足需求了。

    相关文章

      网友评论

          本文标题:在OC中生成随机数:arc4random()与arc4rando

          本文链接:https://www.haomeiwen.com/subject/xvpjxqtx.html