Random r = new Random(47)
2017-10-13 15:48
295 查看
new Random(47); 相当于
API文档说明
Random(long seed)
使用单个 long 种子创建一个新随机数生成器: public Random(long seed) { setSeed(seed); } next 方法使用它来保存随机数生成器的状态。
一般计算机的随机数都是伪随机数,以一个真随机数(种子)作为初始条件,然后用一定的算法不停迭代产生随机数。
setSeed 的方法介绍
使用单个 long 种子设置此随机数生成器的种子。
setSeed 的常规协定是它更改此随机数生成器对象的状态,使其状态好像是刚刚使用参数 seed 作为种子创建它的状态一样。
通过将种子自动更新为 (seed ^ 0x5DEECE66DL) & ((1L << 48) - 1)并清除nextGaussian()使用的haveNextNextGaussian 标志,Random 类可实现 setSeed 方法。
Random 类实现的 setSeed 恰好只使用 48 位的给定种子。
但是,通常重写方法可能使用 long 参数的所有 64 位作为种子值。
随机数种子就是产生随机数的第一次使用值, 机制是通过一个比较复杂的函数,将这个种子的值转化为随机数空间中的某一个点上,并且产生的随机数均匀的散布在空间中。 以后产生的随机数都与前一个随机数有关。
由此看来,对于一些由数学封装好的方法,没必要深究,不过有兴趣的话另说。
Random r= new Random(); r.setSeed(47);
API文档说明
Random(long seed)
使用单个 long 种子创建一个新随机数生成器: public Random(long seed) { setSeed(seed); } next 方法使用它来保存随机数生成器的状态。
一般计算机的随机数都是伪随机数,以一个真随机数(种子)作为初始条件,然后用一定的算法不停迭代产生随机数。
setSeed 的方法介绍
使用单个 long 种子设置此随机数生成器的种子。
setSeed 的常规协定是它更改此随机数生成器对象的状态,使其状态好像是刚刚使用参数 seed 作为种子创建它的状态一样。
通过将种子自动更新为 (seed ^ 0x5DEECE66DL) & ((1L << 48) - 1)并清除nextGaussian()使用的haveNextNextGaussian 标志,Random 类可实现 setSeed 方法。
Random 类实现的 setSeed 恰好只使用 48 位的给定种子。
但是,通常重写方法可能使用 long 参数的所有 64 位作为种子值。
随机数种子就是产生随机数的第一次使用值, 机制是通过一个比较复杂的函数,将这个种子的值转化为随机数空间中的某一个点上,并且产生的随机数均匀的散布在空间中。 以后产生的随机数都与前一个随机数有关。
由此看来,对于一些由数学封装好的方法,没必要深究,不过有兴趣的话另说。
相关文章推荐
- Random rand =new Random(47);
- Random r = new Ranmom(47)
- 关于Random r = new Random(47)中47的意思
- Random rand =new Random(47);
- Random rand =new Random(47);
- Random rand = new Random(47);的简单解释
- 产生随机数可以提高网络安全的新方法(New method of producing random numbers could improve cybersecurity)
- 关于Random(47)和nextint(3)的问题
- 关于Random(47)与randon.nextInt(100)的区别
- 【WPF】 返回随机颜色,Random r= new Random() 不能放在函数里!
- Java——Random random = new Random(long seed)
- 例题:随机生成验证码。Random a=New Random(), 重点随机数格式 .Next , Substring
- Random r = new Random(); int n = r.Next(11); 出错
- JAVA中Random类的Random r=new Random()和Random r=new Random(seedValue)的区别
- QuickCocos2d - math.newrandomseed()
- Integer n=new Integer(47);与int n=47;有何区别
- Random(47)
- Unable to open table file ..\data\model_ckpt: Unknown: NewRandomAccessFile failed to Create/Open:
- codeforces——750A——New Year and Hurry
- AK-47