随机数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无法避免生成重复的数字如果需要生成不重复的随机数序列需要借助数组和集合类

HaloCloud:日本软银vps100M/200M/500M带宽,,¥45.00元/月

halocloud怎么样?halocloud是一个于2019下半年建立的商家,主要提供日本软银VPS,广州移动VDS,株洲联通VDS,广州移动独立服务器,Halo邮局服务,Azure香港1000M带宽月抛机器等。日本软银vps,100M/200M/500M带宽,可看奈飞,香港azure1000M带宽,可以解锁奈飞等流媒体,有需要看奈飞的朋友可以入手!点击进入:halocloud官方网站地址日本vp...

国内云服务器 1核 2G 2M 15元/月 萤光云

标题【萤光云双十二 全场6折 15元/月 续费同价】今天站长给大家推荐一家国内云厂商的双十二活动。萤光云总部位于福建福州,其成立于2002 年。主打高防云服务器产品,主要提供福州、北京、上海 BGP 和香港 CN2 节点。萤光云的高防云服务器自带 50G 防御,适合高防建站、游戏高防等业务。这家厂商本次双十二算是性价比很高了。全线产品6折,上海 BGP 云服务器折扣更大 5.5 折(测试了一下是金...

亚洲云-浙江高防BGP,至强铂金8270,提供自助防火墙管理,超大内存满足你各种需求

官方网站:点击访问亚洲云官网618活动方案:618特价活动(6.18-6.30)全站首月活动月底结束!地区:浙江高防BGPCPU:至强铂金8270主频7 默频3.61 睿频4.0核心:8核(最高支持64核)内存:8G(最高支持128G)DDR4 3200硬盘:40G系统盘+80G数据盘带宽:上行:20Mbps/下行:1000Mbps防御:100G(可加至300G)防火墙:提供自助 天机盾+金盾 管...

java随机数为你推荐
cornerradius如何给TextView加个圆角?行业关键词怎么挖掘关键词呢,都有哪些方法支付宝查询余额怎样查支付宝余额伪静态静态与伪静态的区别?网站联盟网站联盟的运作流程申请证书一、如何申请证书?网易公开课怎么下载哪位高手指导一下,如何下载网易公开课啊?qq怎么发邮件怎么发送QQ邮件畅想中国用“心系祖国情,畅想中国梦”为题目的800字作文mate8价格手机华为mat8售价多少
拜登买域名批特朗普 缓存服务器 ixwebhosting godaddy优惠券 ev证书 最好看的qq空间 京东商城0元抢购 权嘉云 gspeed 网站木马检测工具 adroit 100mbps cloudlink 宏讯 net空间 测试网速命令 架设代理服务器 let wordpress安装 neicun 更多