一、生成随机数的方法
注意:Random类包含在java,util包中
1、Random有两种构造方法:Random()、Random(long seed)
前者使用系统作为种子数,后者使用指定的种子数。Random还具有nextBoolean、nextInt等方法。
(1)nextBoolean 随机数不为0是取真值
Random r1=new Random(1234567890L);
boolean b=r1.nextBoolean();//随机数不为0时取真值
System.out.println(b);
运行截图
(2)nextInt 生成大于等于0,小于100的随机数,但有个不好的就是只能生成一个固定的随机数
int l1=r1.nextInt(100);
System.out.println(l1);
运行截图
(3)nextDouble 生成[0,1)之间的一个固定值随机数
double d1=r1.nextDouble();
System.out.println(d1);
运行截图
(4)ThreadLocalRandom类提供一种更加高效的随机数类产生方法可以随着每次运行改变随机数的值
//类似于连续生成随机数:srand((unsigned)time(NULL))
for(int i=0;i<3;i++) {
int num=ThreadLocalRandom.current().nextInt(1,100);
System.out.println(num);
}
运行截图
(5)Math类中的random,返回一个[0.0,1.0)之间的double类型的值
//Math类中的random,返回一个[0.0,1.0)之间的double类型的值
double n1=Math.random();
System.out.println(n1);
运行截图
(6)通过[min,max)之间获取数
//用Math方法通过[min,max)之间获取数
int max = 100,min = 50;
int randomWithMathRandom=(int) (Math.random()*(max-min)+min);
System.out.println(randomWithMathRandom);
运行截图