随机数伪随机数及其在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

快云科技,免云服务器75折优惠服务器快云21元/月

近日快云科技发布了最新的夏季优惠促销活动,主要针对旗下的香港CN2 GIA系列的VPS云服务器产品推送的最新的75折优惠码,国内回程三网CN2 GIA,平均延迟50ms以下,硬件配置方面采用E5 2696v2、E5 2696V4 铂金Platinum等,基于KVM虚拟架构,采用SSD硬盘存储,RAID10阵列保障数据安全,有需要香港免备案CN2服务器的朋友可以关注一下。快云科技怎么样?快云科技好不...

HostYun 新增可选洛杉矶/日本机房 全场9折月付19.8元起

关于HostYun主机商在之前也有几次分享,这个前身是我们可能熟悉的小众的HostShare商家,主要就是提供廉价主机,那时候官方还声称选择这个品牌的机器不要用于正式生产项目,如今这个品牌重新转变成Hostyun。目前提供的VPS主机包括KVM和XEN架构,数据中心可选日本、韩国、香港和美国的多个地区机房,电信双程CN2 GIA线路,香港和日本机房,均为国内直连线路,访问质量不错。今天和大家分享下...

数脉科技:阿里云香港CN2线路服务器;E3-1230v2/16G/240G SSD/10Mbps/3IP,月付374元

数脉科技怎么样?昨天看到数脉科技发布了7月优惠,如果你想购买香港服务器,可以看看他家的产品,性价比还是非常高的。数脉科技对香港自营机房的香港服务器进行超低价促销,可选择10M、30M的优质bgp网络。目前商家有优质BGP、CN2、阿里云线路,国内用户用来做站非常不错,目前E3/16GB阿里云CN2线路的套餐有一个立减400元的优惠,有需要的朋友可以看看。点击进入:数脉科技商家官方网站香港特价阿里云...

java随机数为你推荐
主页改不了为什么我电脑的主页改不了了?雅虎社区雅虎是什么打开网页出现错误显示网页上错误,打不开网页怎么办快速美白好方法有什么好方法能快速美白?1433端口怎么去看1433端口网站联盟怎样进入网站联盟安卓应用平台哪个手机应用平台的软件比较正版,安全?开机滚动条电脑开机滚动条要走好几次ios7固件下载ios 7及以上固件请在设备上点“信任”在哪点?bt封杀BT下载可以封杀迅雷吗?什么原理?能破吗?
绍兴服务器租用 贝锐花生壳域名 google电话 重庆服务器托管 新世界机房 香港服务器99idc mach5 紫田 国外空间服务商 win8升级win10正式版 国外在线代理 灵动鬼影 元旦促销 新天域互联 789电视 腾讯实名认证中心 美国堪萨斯 免费phpmysql空间 t云 购买国外空间 更多