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无法避免生成重复的数字如果需要生成不重复的随机数序列需要借助数组和集合类
乌云数据主营高性价比国内外云服务器,物理机,本着机器为主服务为辅的运营理念,将客户的体验放在第一位,提供性价比最高的云服务器,帮助各位站长上云,同时我们深知新人站长的不易,特此提供永久免费虚拟主机,已提供两年之久,帮助了上万名站长从零上云官网:https://wuvps.cn迎国庆豪礼一多款机型史上最低价,续费不加价 尽在wuvps.cn香港cera机房,香港沙田机房,超低延迟CN2线路地区CPU...
可以看到这次国庆萤光云搞了一个不错的折扣,香港CN2产品6.5折促销,还送50的国庆红包。萤光云是2002年创立的商家,本次国庆活动主推的是香港CN2优化的机器,其另外还有国内BGP和高防服务器。本次活动力度较大,CN2优化套餐低至20/月(需买三个月,用上折扣+代金券组合),有需求的可以看看。官方网站:https://www.lightnode.cn/地区CPU内存SSDIP带宽/流量价格备注购...
部落曾经在去年分享过一次Boomer.host的信息,商家自述始于2018年,提供基于OpenVZ架构的VPS主机,配置不高价格较低。最近,主机商又在LET发了几款特价年付主机促销,最低每年仅4.95美元起,有独立IPv4+IPv6,开设在德克萨斯州休斯顿机房。下面列出几款VPS主机配置信息。CPU:1core内存:512MB硬盘:5G SSD流量:500GB/500Mbps架构:KVMIP/面板...