黑马程序员技术交流社区

标题: 关于随机数的问题 [打印本页]

作者: 迷你卡卡    时间: 2013-10-23 15:28
标题: 关于随机数的问题
本帖最后由 迷你卡卡 于 2013-10-23 18:39 编辑

Random ran=new Random()
随机数有一个方法的重载,传递的参数名字是seed,种子?这个种子到底是什么意思?把这个参数传递进去会有什么不同吗?

作者: 面朝大海,春暖    时间: 2013-10-23 16:12
seed是为了解决随机数重复的问题,seed可以是一个有返回值的方法例子:
  1.    Random rnd = new Random(seed());
  2. public int seed()
  3. {
  4. //方法体返回一个int类型数A
  5. return A;
  6. }
复制代码
这样会保证产生的随机数中不会有重复的数字。。
作者: 张凡    时间: 2013-10-23 16:15
seed的作用是指定种子数,种子数的作用就是 :
   如果你新建两个Random对象,不设置种子数 那么随机出来的数就是不同的;但是如果你设定这两个Random的种子数是一样的,则调用这两个对象产生的随机数,就是一样的。
作者: 茹化肖    时间: 2013-10-23 18:35
简单的说,计算机出现的随机数都是伪随机的。那这个随机数产生的根据是什么呢,就是一个种子?在C里面,我们要先下种子seed ,我们可以用当前时间,精确到MS 做种子,也可以用CPU温度,或者当前硬盘容量等等数据做种子。如果你固定种子了,那么产生的随机数也就是固定的了。
作者: 迷你卡卡    时间: 2013-10-23 18:38
额,连版主都来回答了,明白!顺手求版主加分呢!




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2