如题:关于Random的随机数概率问题。 string pwd = "";
 Random random = new Random();
 pwd = random.Next(999999);

 string pwd = "";
            for (int i = 0; i < 6; i++)
            {
                Random random = new Random();
                pwd += random.Next(999999);
            }
PWD 产生相同的值  的概率是一样的吗?

解决方案 »

  1.   

    Random random = new Random();放在for循环的外面
      

  2.   

    string pwd = ""; 
     Random random = new Random();
    for (int i = 0; i < 6; i++)
                {               
                    pwd += random.Next(999999);
                }
      

  3.   

    Random random = new Random();
    使用当前时间作为随机数种子。
    因为cpu很快,计时器精度有限,所以连续执行,会得到相同的种子,相同的种子导致产生相同的随机数序列。
    Random产生的是伪随机数。