A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 迷你卡卡 中级黑马   /  2013-10-23 15:28  /  1386 人查看  /  4 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 迷你卡卡 于 2013-10-23 18:39 编辑

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

评分

参与人数 1技术分 +1 收起 理由
haxyek + 1

查看全部评分

4 个回复

倒序浏览
seed是为了解决随机数重复的问题,seed可以是一个有返回值的方法例子:
  1.    Random rnd = new Random(seed());
  2. public int seed()
  3. {
  4. //方法体返回一个int类型数A
  5. return A;
  6. }
复制代码
这样会保证产生的随机数中不会有重复的数字。。

评分

参与人数 1技术分 +1 收起 理由
haxyek + 1

查看全部评分

回复 使用道具 举报
seed的作用是指定种子数,种子数的作用就是 :
   如果你新建两个Random对象,不设置种子数 那么随机出来的数就是不同的;但是如果你设定这两个Random的种子数是一样的,则调用这两个对象产生的随机数,就是一样的。

评分

参与人数 1技术分 +1 收起 理由
haxyek + 1

查看全部评分

回复 使用道具 举报
简单的说,计算机出现的随机数都是伪随机的。那这个随机数产生的根据是什么呢,就是一个种子?在C里面,我们要先下种子seed ,我们可以用当前时间,精确到MS 做种子,也可以用CPU温度,或者当前硬盘容量等等数据做种子。如果你固定种子了,那么产生的随机数也就是固定的了。

评分

参与人数 1技术分 +1 收起 理由
haxyek + 1

查看全部评分

回复 使用道具 举报
额,连版主都来回答了,明白!顺手求版主加分呢!
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马