Random类

Random类中实现的随机算法是伪随机,也就是有规则的随机。在进行随机时,随机算法的起源数字称为种子数(seed),

在种子数的基础上进行一定的变换,从而产生需要的随机数字。

相同种子数的Random对象,相同次数生成的随机数字是完全相同的。也就是说,两个种子数相同的Random对象,

第一次生成的随机数字完全相同,第二次生成的随机数字也完全相同。这点在生成多个随机数字时需要特别注意。

Random类概述:

此类用于产生随机数

如果用相同的种子创建两个 Random 实例,则对每个实例进行相同的方法调用序列,它们将生成并返回相同的数字序列。

构造方法

public Random()没有给种子,用的是默认种子,是当前时间的毫秒值

public Random(long seed)给出指定的种子,给定种子后,每次得到的随机数是相同的。

成员方法:

public int nextInt()返回的是int范围内的随机数

public int nextInt(int n)返回的是[0,n)范围的内随机数

package Random;

import java.util.Random;

public class Demo_1 {
public static void main(String[] args) { //Random:伪随机
//nextDouble()等价于Math.random() //注意:种子数相同,随机数相同
Random r = new Random(1);
for (int i = 0; i < 5; i++) {
System.out.println(r.nextInt(5));
} System.out.println("-----------------------"); Random r1 = new Random(1);
for (int i = 0; i < 5; i++) {
System.out.println(r1.nextInt(5));
} } }
05-11 18:27