一、构造方法:
Random() 创建一个新的随机数生成器。 |
Random(long seed) 使用单个 long 种子创建一个新的随机数生成器。 |
- 无参构造方法表示用当前的时间作为随机数生成器的种子seed,故程序每一次执行时都产生不同的输出。
Random ran=new Random();
System.out.println(ran.nextInt());
//运行第一次结果: 1656553644
//运行第二次结果: 5470922
- 有参构造方法表示用long类型的值作为种子,随机数生成器对于特定的种子值总是产生相同的随机数序列,程序每一次执行都产生相同的随机数。
Random ran=new Random(5);
System.out.println(ran.nextInt());
//运行第一次结果:-1157408321
//运行第二次结果:-1157408321
- 用上面方法生成的随机数有时会产生负数,因为不带参数的nextInt会产生所有有效的整数。而nextInt(int bound); 里可以添加参数,表示生成的随机数在大于等于0小于bound间。
Random ran=new Random();
System.out.println(ran.nextInt(10)); //10是不包含在内的,只产生0~9之间的数。
//运行第一次结果:0
//运行第二次结果:3
- 也可以用nextFloat()或nextDouble()或nextLong()输出随机数。