目录
new Random之后 发生了什么
基本的常量
空参构造器
Random(long seed)
Random(long seed)等效于
Random rnd = new Random();
rnd.setSeed(seed);
所以使用该构造器在实例化的时候 时间开销更小,因为没有调用系统的时间函数。
nextInt() 调用时发生了什么
下一个种子的计算公式:
(seed * 0x5DEECE66DL + 0xBL) & ((1L << 48) - 1)
返回 (int)(seed >>> (48 - bits)).
这是一个线性同余伪随机数生成器,由D.H.Lehmer和Donald E.Knuth在《计算机编程艺术》提出。
随机数的生成算法有平方取中法,线性同余法,梅森旋转法等。