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

ftlcloud(超云)9元/月,1G内存/1核/20g硬盘/10M带宽不限/10G防御,美国云服务器

ftlcloud怎么样?ftlcloud(超云)目前正在搞暑假促销,美国圣何塞数据中心的云服务器低至9元/月,系统盘与数据盘分离,支持Windows和Linux,免费防御CC攻击,自带10Gbps的DDoS防御。FTL-超云服务器的主要特色:稳定、安全、弹性、高性能的云端计算服务,快速部署,并且可根据业务需要扩展计算能力,按需付费,节约成本,提高资源的有效利用率。点击进入:ftlcloud官方网站...

Gcorelabs:美国GPU服务器,8路RTX2080Ti;2*Silver-4214/256G内存/1T SSD,1815欧/月

gcorelabs怎么样?gcorelabs是创建于2011年的俄罗斯一家IDC服务商,Gcorelabs提供优质的托管服务和VPS主机服务,Gcorelabs有一支强大的技术队伍,对主机的性能和稳定性要求非常高。Gcorelabs在 2017年收购了SkyparkCDN并提供全球CDN服务,目标是进入全球前五的网络服务商。G-Core Labs总部位于卢森堡,在莫斯科,明斯克和彼尔姆设有办事处。...

香港E3 16G 390元/ 香港E5*2 32G 600元/ 香港站群 4-8C 1200元/ 美国200G高防 900/ 日本100M 700元

3C云国内IDC/ISP资质齐全商家,与香港公司联合运营, 已超6年运营 。本次为大家带来的是双12特惠活动,香港美国日本韩国|高速精品|高防|站群|大带宽等产品齐全,欢迎咨询问价。3C云科技有限公司官方网站:http://www.3cccy.com/客服QQ:937695003网页客服:点击咨询客户QQ交流群:1042709810价目表总览升级内存 60元 8G内存升级硬盘 1T机械 90元 2...

java随机数为你推荐
会声会影12下载哪里有会声会影12好看视频素材下载站长故事爱迪生发明东西的故事手机区号手机号码办公协同软件oa办公系统软件有哪些怎么升级ios6iPad怎么升级到iOS6正式版?idc前线永恒之塔内侧 删档吗 ?mate8价格手机华为mat8售价多少mate8价格华为mate8市场价多少ios系统ios系统有哪些版本?什么是云平台什么是云系统?
cc域名 域名到期查询 上海域名注册 动态ip的vps 华为云主机 国内加速器 魔兽世界台湾服务器 ftp教程 什么是刀片服务器 百兆独享 免费防火墙 华为云盘 web服务器是什么 登陆空间 云服务器比较 华为k3 学生服务器 google搜索打不开 美国vpn代理 西部数码主机 更多