admin 管理员组文章数量: 1086019
2024年3月18日发(作者:java property)
关于Java中的Random()函数
今天在做Java练习的时候注意到了Java里面的一个随机函数——Random,刚开始只是
知道这个函数具有随机取值的作用,于是上网搜索了资料一番,做了一下一些关于Random
函数的总结:
Java中其实存在着两种Random函数:
一、 ;
调用这个()函数能够返回带正号的double值,该值大于等于0.0且小于1.0,
即取值范围是[0.0,1.0)的左闭右开区间,返回值是一个伪随机选择的数,在该范围内(近似)
均匀分布。
例如我下面的实验代码
编译通过后运行结果如下图
大家观察会发现代码的用一个循环10次循环输出num的取值,均随机分布在[0,3)之间!
在使用()的时候需要注意的地方时该函数是返回double类型的值,所以在
要赋值给其他类型的变量的时候注意需要进行塑形转换。
二、 ;
在Java的API帮助文档中,总结了一下对这个Random()函数功能的描述:
1、 类中实现的随机算法是伪随机,也就是有规则的随机,所谓有规则的
就是在给定种子(seed)的区间内随机生成数字;
2、相同种子数的Random对象,相同次数生成的随机数字是完全相同的.
3、Random类中各方法生成的随机数字都是均匀分布的,也就是说区间内部的数字生成的
几率均等.
下面Random()的两种构造方法
()
创建一个新的随机数生成器。
(long seed)
使用单个 long 种子创建一个新的随机数生成器。
我们可以在构造Random对象的时候指定种子(这里指定种子有何作用,请接着往下看),
如:
Random r1 = new Random(20);
或者默认当前系统时间对应的相对时间有关的数字作为种子数:
Random r1 = new Random();
需要说明的是:你在创建一个Random对象的时候可以给定任意一个合法的种子数,种子
版权声明:本文标题:Java中的Random函数 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://roclinux.cn/p/1710769050a572151.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论