日期:2014-05-18  浏览次数:20956 次

随机数的种子
有个问题一直搞不懂,随机数的种子到底是做什么的

  比如 Random random=new Random(5);

  int num=random.bext();

  这个num就一直不变

  这是什么回事呢,知道的请留言。tks


------解决方案--------------------
因为这叫伪随机数,根据一个常量,每次的结果定然一样的,实际上当算法固定后,输出的结果是已知固定的。所以你固定是5,结果总是一样的,你可以定义到函数外,作为成员变量,初始化后,每次获得的就不同了。但每次软件运行第n次总是和下次软件运行一致,所以你可以用当前操作系统启动的时间戳来做种子,相对来说会算是随机。
Random random=new Random(Environment.TickCount);