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

618云上Go:腾讯云秒杀云服务器95元/年起,1C2G5M三年仅288元起

进入6月,各大网络平台都开启了618促销,腾讯云目前也正在开展618云上Go活动,上海/北京/广州/成都/香港/新加坡/硅谷等多个地区云服务器及轻量服务器秒杀,最低年付95元起,参与活动的产品还包括短信包、CDN流量包、MySQL数据库、云存储(标准存储)、直播/点播流量包等等,本轮秒杀活动每天5场,一直持续到7月中旬,感兴趣的朋友可以关注本页。活动页面:https://cloud.tencent...

Boomer.Host(年付3.5美)休斯敦便宜VPS

Boomer.Host是一家比较新的国外主机商,虽然LEB自述 we’re now more than 2 year old,商家提供虚拟主机和VPS,其中VPS主机基于OpenVZ架构,数据中心为美国得克萨斯州休斯敦。目前,商家在LET发了两款特别促销套餐,年付最低3.5美元起,特别提醒:低价低配,且必须年付,请务必自行斟酌确定需求再入手。下面列出几款促销套餐的配置信息。CPU:1core内存:...

Megalayer(48元)新增 美国CN2优化线路特价服务器和VPS方案

Megalayer 商家算是新晋的服务商,商家才开始的时候主要是以香港、美国独立服务器。后来有新增菲律宾机房,包括有VPS云服务器、独立服务器、站群服务器等产品。线路上有CN2优化带宽、全向带宽和国际带宽,这里有看到商家的特价方案有增加至9个,之前是四个的。在这篇文章中,我来整理看看。第一、香港服务器系列这里香港服务器会根据带宽的不同区别。我这里将香港机房的都整理到一个系列里。核心内存硬盘IP带宽...

java随机数为你推荐
cornerradius如何给TextView加个圆角?找不到光驱电脑找不到光驱怎么办阿?优酷路由宝怎么赚钱优酷路由宝整的可以赚钱吗?可以赚多少?暴风影音怎么截图怎么截取暴风影音图片博客外链外链都要怎么做?博客外链有没有效果?湖南商标注册湖南长沙怎么注册商标中国电信互联星空怎么在中国电信网上营业厅自行开通互联星空消费权限依赖注入什么是侵入性?还有依赖注入?arm开发板ARM开发板和树莓派有什么区别童之磊网文大学很强吗?
域名查询 山东虚拟主机 域名备案网站 如何申请免费域名 如何注册中文域名 flashfxp怎么用 photonvps BWH godaddy支付宝 主机屋免费空间 网站监控 双11抢红包攻略 evssl证书 云主机51web 宁波服务器 bgp双线 广州服务器 空间合租 昆明蜗牛家 银盘服务 更多