随机数伪随机数及其在JAVA程序中的应用分析

java随机数  时间:2021-02-13  阅读:()

精品文档可编辑 值得下载

伪随机数及其在JAVA程序中的应用分析

摘要伪随机数发展对以往的追求随机数列的方法有了很大效率上的提升将其应用到J AVA程序当中对运行的效率有了很大改变。基于此本文则主要就伪随机数进行详细阐述并对其在JAVA程序当中的实际应用加以详细探究分析希望能够通过此次的理论研究对实际操作起到一定指导作用。

【关键词】 JAVA程序应用伪随机数

当前我国的科学技术正迅猛的发展一些软件的开发愈来愈带有技术性当前伪随机数在软件开发和程序的设计过程中得到了较为广泛的应用。随机数在实际的应用过程中有着效率低及速度慢和占据的内存量大的缺陷而伪随机数则通过数学递推公式产生的随机数这一形式对实际的应用效率得到了有效提升。

1伪随机数生成原理及JAVA程序分析

1 .1伪随机数的生成原理分析

对伪随机数生成需要满足几个重要的条件只有在这一基础上才能够实现伪随机数主要就是序列的任意数值间的相互独立以及对概率分布的确定。从现阶段的发展情况来看生成随机数的方法主要有两种第一种就是通过物理方法产生的真正随机数第二种就是在数学方法的作用下产生

精品文档可编辑 值得下载

的有统计规律的随机数列这两种生成方法就是最为主要的形式。在这一过程中通过相关算法产生的随机数其实并不是真是的这就是所谓的伪随机数其产生的主要原理就是通过编译器对伪随机数提供生成器然后在生成器的作用支持下对产生的数列精确度及均匀性最大化的保障接着就是进行对整数实际的应用并传输给函数这样就能够对数段间的整数数量进行有效的制约。

1 .2关于J AVA程序的理论分析

这一程序对源代码以及二进制字节码间的转换后。通过虚拟技术进行执行字节码这样就对编译和到处执行等跨平台特性的实现比较有利。JAVA程序在语言上相对比较简单并且是分布式以及安全的虽然在这些方面有着优越性但其自身还是存在着一些局限也就是需要对程序中伪随机数的应用进行分析才能够实现。

2伪随机数生成的方式及在JAVA程序当中的实际应用

2.1伪随机数的生成方式分析

伪随机数的生成方式是多样性的它可以通过多种方式来生成最为常见的就是平方取中法以及线性同余法和非线性同余法等。其中伪随机数能够通过递推公式来产生an+1=fan  n=1 2 ……通过这一通用公式就能够看出在计算的方法及初值得到了确定之后那么在随机数列方面也就得到了确定这和随机数列独立性要求是有着矛盾性存

精品文档可编辑 值得下载

在的。不仅如此伪随机数还会出现周期性的循环在这一情况下要能够满足分布的均匀性及统计上的独立性和足够长的周期并要在内存的占用上要达到最少所产生的随机数速度要足够的快。

从伪随机数的线性同余法的方式上来看这是最为常用的一种方法这是在上世纪五十年代提出的ni+1=af ni +bmod mi=0  1  2  . . . m-1生成数值序列称为是同余数列并在其序列当中常熟的选择对随机序列相关随机性能都有着直接性的关系所以对常熟进行适当的选择能够对伪随机数的区间均匀性得到有效保持。想要提高种子的均匀性就是通过算法的处理进行对整数溢出加以防止从而才能够保障伪随机数均匀并不重复。在这一过程中线性同余法不只是和种子有关同时和参数m、 a、 c的选取也有着关联如下表所示。

种子及参数关系表a b no m周期随机序列

7771046  9  0  7  6  9……

53716166  1  8  1 1  10  5  12  15  14  9 0 

3  2  13 4  7  6  . . .

51 1 886  7 4  5  2  3  0  1  6  7. .

2.2伪随机数在J AVA程序当中的实际应用

Random类的实现方面主要是在JDK最初版本发布时候

精品文档可编辑 值得下载

就能够使用J AVA.u t i l .Ra n d o m类产生随机数所以Ra n d o m类也主要是在nextInt这一方法的作用下得以完成的这一过程结果可通过代码进行详细的了解

Random random Generator=new Random  int random Number=random Generator.nextInt  n  

其中就使用到了random类的nextInt方法在这一方法的产生随机数范围基础上可结合特定应用程序需要的不同而进行转变。首先要进行递进参数value=1+random Generator.nextInt

在这一语句当中就产生了从1到6范围内的随机整数当进行递进参数而对过程中通过nextInt这一方法返回值范围为0到参数值减1。在这一过程中需要对应用程序当中的骰子滚动和显示进行实际的应用这时候就需要在rol lDice的方法下进行滚动骰子应用程序中就能够生成6个数字键的随机数通过对制定的骰子图片显示进而来计算出骰子表面的数据和这样就能够实现游戏程序的开发以及应用。

与此同时也能够通过JAVA中的Math类所提供的random方法调用形式为double x=Math.random  这一方法的返回值是在0.0―1 .0之间的浮点数产生任意low及high两数间随机数以及使其随机树的范围在8.0到300.0之间就可以通过以下的表达式进行实现

精品文档可编辑 值得下载

8.0+Math.random  *292

3结语

综上所述针对伪随机数的实际应用主要是在J AVA当中的应用在经过了长期完善以及发展这一方式的应用已经成了主要的程序设计的语言通过不同方式的伪随机数的生成方式能够对实际额需求最大化的满足。 由于本文的篇幅限制不能进一步的深入研究希望能够起到抛砖引玉的作用以待后来者居上。

参考文献

[1]边利亚叶飞跃.产品防伪中伪随机数的应用技术研究[J].计算机工程与设计 201302 .

[2]王霞俊.Java中随机数的生成、分析及其应用[J].福建电脑 201409 .

作者简介

董丽娟 1982-  女大学本科学历。 现为石家庄幼儿师范高等专科学校助教。研究方向为计算机技术。

作者单位

石家庄幼儿师范高等专科学校河北省石家庄市050228

RAKsmart推出7.59美元/月,云服务器产品Cloud Server,KVM架构1核1G内存40G硬盘1M带宽基础配置

近期RAKsmart上线云服务器Cloud Server产品,KVM架构1核1G内存40G硬盘1M带宽基础配置7.59美元/月!RAKsmart云服务器Cloud Server位于美国硅谷机房,下单可选DIY各项配置,VPC网络/经典网络,大陆优化/精品网线路,1-1000Mbps带宽,支持Linux或者Windows操作系统,提供Snap和Backup。RAKsmart机房是一家成立于2012年...

HostHatch(15美元)大硬盘VPS,香港NVMe,美国、英国、荷兰、印度、挪威、澳大利亚

HostHatch在当地时间7月30日发布了一系列的促销套餐,涉及亚洲和欧美的多个地区机房,最低年付15美元起,一次买2年还能免费升级双倍资源。商家成立于2011年,提供基于KVM架构的VPS主机,数据中心包括中国香港、美国、英国、荷兰、印度、挪威、澳大利亚等国家的十几个地区机房。官方网站:https://hosthatch.com/NVMe VPS(香港/悉尼)1 CPU core (12.5%...

95IDC香港特价物理机服务器月付299元起,5个ip/BGP+CN2线路;美国CERA服务器仅499元/月起

95idc是一家香港公司,主要产品香港GIA线路沙田CN2线路独服,美国CERA高防服务器,日本CN2直连服务器,即日起,购买香港/日本云主机,在今年3月份,95IDC推出来一款香港物理机/香港多ip站群服务器,BGP+CN2线路终身7折,月付350元起。不过今天,推荐一个价格更美的香港物理机,5个ip,BGP+CN2线路,月付299元起,有需要的,可以关注一下。95idc优惠码:优惠码:596J...

java随机数为你推荐
回收站在哪手机回收站在哪里打开吴晓波频道买粉五大知识付费平台有哪些?显卡温度多少正常显卡温度多少算正常申请证书求高手教下怎么申请证书godaddygodaddy域名怎样使用宕机何谓宕机?怎么上传音乐怎么上传音乐?网站推广外链网站推广发外链,外链内容怎么确定如何修改ie主页怎么修改IE首页安全证书错误出现 网站的安全证书有问题 的警告怎么办
域名劫持 短域名 重庆服务器租用 企业主机 全球付 鲨鱼机 512av 好玩的桌面 typecho 蜗牛魔方 php空间申请 炎黄盛世 傲盾官网 彩虹云 独立主机 iki 畅行云 免费蓝钻 大化网 免备案jsp空间 更多