Random是随机类,可以生成随机数。
1.Random有两种构造器:
Random():创建一个空的随机数对象
Random(long seed):创建一个种子为seed的随机数对象。
2.常用方法:
int nextInt():返回一个随机整数
double nextDouble():返回一个随机Double数
boolean nextBoolean():返回一个随机Boolean数
float nextFloat():返回一个随机Float数
int nextInt(int n):返回一个0(含)到n(不含)的随机整数
eg:
class RandomDemo{
public static void main(String[] args){
Random rd=new Random();//创建一个空的随机对象
//生成100个随机整数,并输出。
for(int i=0;i<100;i++){
int a=rd.nextInt();
System.out.println(a);
}
//生成100个100以内的随机整数,并输出
for(int i=0;i<100;i++){
int a=rd.nextInt(100);
System.out.println(a);
}
}
}
3.Random类两种构造器的区别
区别在于,有种子的构造器生成随机数是固定的,重复执行代码,随机数不变。而没有种子的构造器,每次执行代码,生成的随机数都要变化。
Random rd=new Random();
Random rd1=new Random(999l);
int a=rd.nextInt();//每次执行代码,生成的随机数都变化
int b=rd1.nextInt();//每次执行代码,生成的随机数都固定
4.Math类的random()方法
random()方法返回一个大于等于0,小于1.0的随机数。利用该方法也可生成随机整数。
eg:生成一个0(不含)到100(含)的随机整数
double val=Math.random()*100+1;
int val1=(int)(val.floor());//需要强制转换数据类型