首页 > 编程知识 正文

JAVA获取随机数,java随机数生成

时间:2023-05-03 15:34:37 阅读:31108 作者:405

在Java中,可以使用java.util.Random类来生成随机数生成器。 构造函数有两种格式:随机(和随机)长序列。 Random (是当前时间System.currentTimeMillis ) )用作生成器的种子,random (long seed )使用指定的seed作为生成器的种子。

随机数发生器(Random )对象发生后,通过调用不同的method:nextInt (、nextLong )、nextFloat (、nextDouble ) )等来获取不同类型的随机数。

生成随机数

Random random=new Random (;

随机随机=新随机(100; //指定种子数100

random调用不同的方法来获取随机数。

如果两个Random对象使用相同的种子,并且按相同的顺序调用相同的函数,则返回值完全相同。 两个Random对象的输出完全相同,如下例所示

1 import java.util.*; 2 classtestrandom {3publicstaticvoidmain (string [ ] args ) )4randomrandom1=newrandom(100 ); 5 system.out.println (random1. nextint (); 6 system.out.println (random1. next float (); 7 system.out.println (random1. next boolean (); 8随机随机2=新随机(100; 9 system.out.println (random2. nextint (); 10 system.out.println (random2. next float (); 11 system.out.println (random2. next boolean (); 12 }13 }

指定范围内的随机数

随机数控制在某个范围内,使用模量运算符%

1 import java.util.*; 2 classtestrandom {3publicstaticvoidmain (string [ ] args ) ) {4 Random random=newRandom; 5for(intI=0; i 10; I )6system.out.println (math.ABS (random.nextint () ) ) ) ) ) ) )。 7 }8 }9 }

得到的随机数有正负之分,在Math.abs中将取得数据范围设为负以外

获取指定范围内的不重复随机数

1 import java.util.*; 2 classtestrandom {3publicstaticvoidmain (字符串[ ] args ) {4 int[] intRet=new int[6]; 5 int intRd=0; //保存随机数

6输入计数=0; //记录生成的随机数的数量

7 Int标志=0; //是否已经生成标志

8 while (计数6 ({9random RDM=new random ) system.currenttimemillis ) ); 10intrd=math.ABS(RDM.nextint () )2 1; 11for(intI=0; i' intRet[t]; 26 }27 }28 }

附件:

介绍Java随机数系Random

Java实用程序类库中的类java.util.Random提供了一种生成各种类型的随机数的方法。 可以生成随机数,如int、long、float、double和Goussian。 这也是与java.lang.Math方法Random ()的最大区别,该方法只产生双精度随机数。

类Random的方法非常简单,只有两种构造方法和六种常用方法。

构建方法:

(1)公共随机) )。

)2)公共随机(长序列)。

Java需要基值seed才能生成随机数。 在第一种方法中,缺省情况下,基值将系统时间设置为seed。

常用方法:

)1) publicsynonronizedvoidsetseed (长序列)此方法是设置基础值seed。

(2)公共int nextint ) )该方法生成整数随机数。

(3)公共长下一个) )该方法生成长型随机数。

(4)公共浮点下一浮点)该方法生成浮点型随机数。

(5)双精度下一个双精度) )该方法是生成双精度型随机数。

(6) publicsynchronizeddoublenextgoussian ) )该方法生成双精度型goussian随机数。

1 RandomApp.java。 2 //import java.lang.*;

3 importjava.util.Random; 4

5 publicclassrandomapp {6publicstaticvoidmain (string args [ ] ) {7 Random ran1=newRandom ); 8随机随机随机存取存储器2=新随机存取存储器(12345; 9

制作了两个Random类的对象。

10 system.out.println (the1 stsetofrandomnumbers : ); 11 system.out.println (integer : ) ran1.nextint ); 12system.out.println(long: ) ran1.nextlong ); 13 system.out.println (' float : ' ran1. next float ) ); 14 system.out.println (双: ) ran1. next双) ); 15 system.out.println (Gaussian : ) ran1.nextGaussian ); 16 //产生各种类型的随机数

17 system.out.print (the2ndsetofrandomnumbers : ); 18for(intI=0; i5; I (({ 19 system.out.println (ran2. nextint () ) ) ) ) ) 652 20if(I==2 )。 21 //产生相同类型的不同随机数。

22 System.out.println (; 23 }24 }25 }

Math.random也可以

例如,假设你想要一个0到10之间的随机数

你可以这样写

(int ) ) Math.random ) *10 );

JAVA生成指定范围的随机数"

《JAVA产生指定范围的随机数》

生成机制:

生成最小-最大之间的数字

实现原理:

math.round(math.random () * ) * (最大最小(Min ) ) ) )。

龙腾; 不能设定为//int,必须设定为long

产生1000到9999的随机数

temp=math.round (math.random (* 89991000 ) );

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。