浅谈iOS中三种生成随机数方法

 更新时间:2015年06月09日 09:48:30   投稿:hebedich  
本文给大家分享的是在IOS中生成随机数的三种方法,以及三种算法的效率对比,有需要的小伙伴可以参考下。

ios 有如下三种随机数方法:

//第一种
srand((unsigned)time(0)); //不加这句每次产生的随机数不变
int i = rand() % 5;
//第二种
srandom(time(0));
int i = random() % 5;
//第三种
int i = arc4random() % 5 ; 

注:

  ① rand()和random()实际并不是一个真正的伪随机数发生器,在使用之前需要先初始化随机种子,否则每次生成的随机数一样。

      ② arc4random() 是一个真正的伪随机算法,不需要生成随机种子,因为第一次调用的时候就会自动生成。而且范围是rand()的两倍。在iPhone中,RAND_MAX是0x7fffffff (2147483647),而arc4random()返回的最大值则是 0x100000000 (4294967296)。

精确度比较:arc4random() > random() > rand()

附:arc4random() 常用方法集合

//获取一个随机整数范围在:[0,100)包括0,不包括100
int x = arc4random() % 100;
//获取一个随机数范围在:[500,1000),包括500,不包括1000
int y = (arc4random() % 501) + 500;
//获取一个随机整数,范围在[from,to),包括from,不包括to
-(int)getRandomNumber:(int)from to:(int)to
{
  return (int)(from + (arc4random() % (to – from + 1)));
} 

以上所述就是本文的全部内容了,希望大家能够喜欢。

相关文章

  • iOS实现文件上传功能

    iOS实现文件上传功能

    这篇文章主要为大家详细介绍了iOS实现文件上传功能,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-05-05
  • iOS开发教程之Status Bar状态栏设置的方法汇总

    iOS开发教程之Status Bar状态栏设置的方法汇总

    iOS 的 Status Bar 状态栏是一个比较坑的地方,所以下面这篇文章主要给大家介绍了关于iOS开发教程之Status Bar状态栏设置的相关资料,文中通过示例代码介绍的非常详细,需要的朋友可以参考下
    2018-08-08
  • IOS获取系统相册中照片的示例代码

    IOS获取系统相册中照片的示例代码

    在大家的日常开发中,经常会遇到有的app需要从系统相册中获取图片,如设置用户头像等,下面这篇文章给大家分享这个功能的实现,有需要的可以参考借鉴。
    2016-09-09
  • iOS动态调整UILabel高度的几种方法

    iOS动态调整UILabel高度的几种方法

    在iOS编程中UILabel是一个常用的控件,下面这篇文章主要给大家介绍了关于iOS动态调整UILabel高度的几种方法,文中通过示例代码介绍的非常详细,需要的朋友可以参考借鉴,下面随着小编来一起学习学习吧。
    2017-12-12
  • iOS实现图片折叠效果

    iOS实现图片折叠效果

    这篇文章主要为大家详细介绍了iOS实现图片折叠效果,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-02-02
  • iOS的HTTP请求和请求回执类用法小结

    iOS的HTTP请求和请求回执类用法小结

    这里为大家整理了iOS的HTTP请求和请求回执类用法小结,包括发送请求的NSURLRequest、NSMutableURLRequest和负责回复的NSURLResponse类的常用方法和属性,需要的朋友可以参考下
    2016-06-06
  • iOS自定义时间滚动选择控件

    iOS自定义时间滚动选择控件

    这篇文章主要为大家详细介绍了iOS自定义时间滚动选择控件,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-04-04
  • iOS点击查看大图的动画效果

    iOS点击查看大图的动画效果

    这篇文章主要为大家详细介绍了iOS点击查看大图的动画效果,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2016-11-11
  • iOS中NSNumberFormatter的介绍与用法

    iOS中NSNumberFormatter的介绍与用法

    NSNumberFormatter 应该可以满足你对数据形式的一般需求,值得了解一下,下面这篇文章主要给大家介绍了关于iOS中NSNumberFormatter的相关资料,文中通过示例代码介绍的非常详细,需要的朋友可以参考下
    2018-09-09
  • iOS实现步骤进度条功能实例代码

    iOS实现步骤进度条功能实例代码

    这篇文章主要给大家介绍了关于iOS实现步骤进度条功能的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2018-11-11

最新评论