Random类
Random类的实例用于生成伪随机数流,此类使用48位的种子,使用线性同余公式对其进行修改。如果用相同的种子创建两个Random实例,则对每个实例进行相同的方法调用序列,它们将生成并返回相同的数字序列。为了保证此属性的实现,为类Random指定了特定的算法。为了 Java 代码的完全可移植性,Java 实现必须让类 Random
使用此处所示的所有算法。但是允许 Random
类的子类使用其他算法,只要其符合所有方法的常规协定即可。
注:Random类实现的算法使用一个protected实用工具方法,每次调用它最多可提供32个伪随机生成的位。
Random类构造方法
//直接创建一个Random类对象
Random()
//使用seed作为随机种子创建一个Random类对象
Random(long seed)
Random类常用方法
//从随机数生成器返回下一个整型值
int nextInt()
//从随机数生成器返回下一个长整型值
long nextLong()
//从随机数生成器返回0.0到1.0之间的下一个浮点值
float nextFloat()
//从随机数生成器返回0.0到1.0之间的下一个双精度值
double nextDouble()
//从随机数生成器返回下一个高斯分步的双精度值。中间值为0.0,而标准差为1.0
double nextGaussian()
测试类:
public class RandomTest {
public static void main(String[] args) {
//创建一个Random类的对象
Random random = new Random();
//随机生成20个100以内的随机数,并打印
for (int i=0; i<20; i++){
int num = random.nextInt(100);
System.out.println("第" + (i+1) + "个随机数为:" + num);
}
}
}