随机数java生成随机数方法大全(可指定范围、分布方式、类型、种子)

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

java生成随机数方法大全可指定范围、分布方式、类型、种子

*Java实用工具类库中的类java.util.Random提供了产生各种类型随机数的方法。

*它可以产生int、 long、 float、 doub le以及Gous sian等类型的随机数。

*java.lang.Math中的方法random()只产生double型的随机数。public c las s RandomNumber {public static void main(String[] args) {

//使用java.lang.Math的random方法生成随机数

Sys tem.out.println(Math.random():+Math.random());

//使用不带参数的构造方法构造java.util.Random对象

System.out.println(使用不带参数的构造方法构造的Random对象:

Random rd1=new Random();

//产生各种类型的随机数

//按均匀分布产生整数

System.out.println( int:+rd 1.nextInt());

//按均匀分布产生长整数

System.out.println( long:+rd 1.nextLong());

//按均匀分布产生大于等于0小于1的float数[0, 1)

System.out.println(float:+rd 1.nextFloat());

//按均匀分布产生[0, 1)范围的double数

System.out.println(double:+rd 1.nextDouble());

//按正态分布产生随机数

System.out.println(Gaussian:+rd1.nextGaussian());

//指定随机数产生的范围

S ys tem.out.print( [0,10)范围内随机整数序列:for(int i=0; i i++) {

//Random的nextInt(int n)方法返回一个[0,n)范围内的随机数

System.out.print(rd 1.nextInt(10)+

System.out.println();

S ys tem.out.print( [5,23)范围内随机整数序列:for(int i=0; i i++) {

//因为nextInt(int n)方法的范围是从0开始的

//所以需要把区间[5,28)转换成5+[0,23)。

System.out.print(5+rd 1.nextInt(23)+

Sys tem.out.println();

Sys tem.out.print(利用nextF loat()生成[0,99)范围内的随机整数序列:for(int i=0; i i++) {

System.out.print((int) (rd 1.nextFloat() * 100)+

Sys tem.out.println();

Sys tem.out.println();

//使用带参数的构造方法构造Random对象

//构造函数的参数是long类型是生成随机数的种子。

System.out.println(使用带参数的构造方法构造的Random对象:

Random ran2=new Random(10);

//对于种子相同的Random对象生成的随机数序列是一样的。

Sys tem.out.println(使用种子为10的Random对象生成[0,10)内随机整数序列:

for(int i=0; i i++) {

Sys tem.out.print(ran2.nextInt(10)+

Sys tem.out.println();

Random ran3=new Random(10);

System.out.println(使用另一个种子为10的Random对象生成[0,10)内随机整数序列:for(int i=0; i i++) {

Sys tem.out.print(ran3.nextInt(10)+

Sys tem.out.println();

// ran2和ran3生成的随机数序列是一样的如果使用两个没带参数构造函数生成的Random对象

//则不会出现这种情况这是因为在没带参数构造函数生成的Random对象的种子缺省是当前系统时间的毫秒数。

//另外直接使用Random无法避免生成重复的数字如果需要生成不重复的随机数序列需要借助数组和集合类

白丝云-美国圣何塞4837/德国4837大带宽/美西9929,26元/月起

官方网站:点击访问白丝云官网活动方案:一、KVM虚拟化套餐A1核心 512MB内存 10G SSD硬盘 800G流量 2560Mbps带宽159.99一年 26一月套餐B1核心 512MB内存 10G SSD硬盘 2000G流量 2560Mbps带宽299.99一年 52一月套餐...

HostKvm:夏季优惠,香港云地/韩国vps终身7折,线路好/机器稳/适合做站

hostkvm怎么样?hostkvm是一家国内老牌主机商家,商家主要销售KVM架构的VPS,目前有美国、日本、韩国、中国香港等地的服务,站长目前还持有他家香港CN2线路的套餐,已经用了一年多了,除了前段时间香港被整段攻击以外,一直非常稳定,是做站的不二选择,目前商家针对香港云地和韩国机房的套餐进行7折优惠,其他套餐为8折,商家支持paypal和支付宝付款。点击进入:hostkvm官方网站地址hos...

Sharktech($49/月),10G端口 32GB内存,鲨鱼机房新用户赠送$50

Sharktech 鲨鱼机房商家我们是不是算比较熟悉的,因为有很多的服务商渠道的高防服务器都是拿他们家的机器然后部署高防VPS主机的,不过这几年Sharktech商家有自己直接销售云服务器产品,比如看到有新增公有云主机有促销活动,一般有人可能买回去自己搭建虚拟主机拆分销售的,有的也是自用的。有看到不少网友在分享到鲨鱼机房商家促销活动期间,有赠送开通公有云主机$50,可以购买最低配置的,$49/月的...

java随机数为你推荐
iphone5解锁捡了个苹果5怎么解锁金山杀毒怎么样金山杀毒怎么样?万网核心代理哪里可以注册免费代理?不兼容软件和电脑不兼容会怎样?安卓应用平台安卓手机下软件哪个网站好iphone越狱后怎么恢复苹果越狱后怎么恢复出厂设置神雕侠侣礼包大全神雕侠侣先手礼包在哪领ejb开发EJB是啥玩意了二层交换机请教:二层交换机是干什么用的啊?网页打开很慢为什么我打开网页很慢
linuxapache虚拟主机 awardspace ix主机 免备案cdn 英语简历模板word iis安装教程 me空间社区 南通服务器 稳定免费空间 电信虚拟主机 爱奇艺会员免费试用 彩虹云 cloudlink 万网空间管理 百度云加速 上海电信测速 监控服务器 广州虚拟主机 服务器硬件配置 广州服务器托管 更多