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

HyperVMart:加拿大vps,2核/3G/25G NVMe/G口不限流量/季付$10.97,免费Windows系统

hypervmart怎么样?hypervmart是一家成立了很多年的英国主机商家,上一次分享他家还是在2年前,商家销售虚拟主机、独立服务器和VPS,VPS采用Hyper-V虚拟架构,这一点从他家的域名上也可以看出来。目前商家针对VPS有一个75折的优惠,而且VPS显示的地区为加拿大,但是商家提供的测速地址为荷兰和英国,他家的优势就是给到G口不限流量,硬盘为NVMe固态硬盘,这个配置用来跑跑数据非常...

丽萨主机122元/每季,原生IP,CN2 GIA网络

萨主机(lisahost)新上了美国cn2 gia国际精品网络 – 精品线路,支持解锁美区Netflix所有资源,HULU, DISNEY, StartZ, HBO MAX,ESPN, Amazon Prime Video等,同时支持Tiktok。套餐原价基础上加价20元可更换23段美国原生ip。支持Tiktok。成功下单后,在线充值相应差价,提交工单更换美国原生IP。!!!注意是加价20换原生I...

virmach:3.23美元用6个月,10G硬盘/VirMach1核6个月Virmach

virmach这是第二波出这种一次性周期的VPS了,只需要缴费1一次即可,用完即抛,也不允许你在后面续费。本次促销的是美国西海岸的圣何塞和美国东海岸的水牛城,周期为6个月,过后VPS会被自动且是强制性取消。需要临时玩玩的,又不想多花钱的用户,可以考虑下!官方网站:https://www.virmach.comTemporary Length Service Specials圣何塞VPS-一次性6个...

java随机数为你推荐
google竞价排名谷歌竞价排名现在是显示在什么位置?主页改不了浏览器主页改不了公章制作如何用photoshop制作公章硬盘人电脑对人有多大辐射?qq空间打扮QQ空间打扮怎么升级ios6iPad怎么升级到iOS6正式版?宕机宕机是什么意思?机械键盘轴打游戏用机械键盘到底什么轴好?机械键盘轴机械键盘什么轴好,机械键盘轴有几种iphone6上市时间苹果6什么时候出?
3322动态域名注册 国际域名抢注 泛域名绑定 新秒杀 ftp教程 世界测速 优酷黄金会员账号共享 联通网站 带宽测试 windowsserver2012r2 apachetomcat alertpay 德国代理 压力测试工具 达拉斯 linuxvi命令 赵荣博客 免费php空间申请 台式电脑主机推荐 总线制报警主机 更多