- 产生随机数的原理
产生同类随机数的运算是相同的(如:产生2个随机整数,如果2次传入的seed一样,那么得到的2个随机整数也一样)
- Random类的2个构造器
。无参构造器无参构造器调用了有参构造器,传入的seed是当前时间+一个long,所以每次产生的随机数都不一样(seed在变)
。有参构造器
如果传入的seed不在变化,每次产生的随机数一样(伪随机数)
Random random = new Random((new Date()).getTime());
Random random2 = new Random();
这两种方式都能产生真随机数
无参构造器其实是语法糖
- Random类获取随机数的内部实现
nextInt方法的源码
只要每次传入的seed不同,返回的随机整数就不同