无论.NET版本如何,对具有相同种子的Random.Next()的第n次调用是否总是产生相同的数字?

kis*_*pit 1 c# versioning random

我是一个新手C#学习者,并构建一个系统,从一组有序的问题生成问题表.每个问题表都有30个问题从问题集中随机选择.每个问题表由一个整数唯一标识,该整数用作种子值.

由于我不知道随机生成器如何工作的内部细节,我想知道无论.NET版本如何,使用相同种子的n-th调用是否Random.Next()总是产生相同的数字.

最小的工作示例如下.

using System;

namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            const int seed = 12345;
            Random rnd = new Random(seed);
            for (int x = 0; x < 10; x++)
                Console.WriteLine(rnd.Next());
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

Dam*_*ver 8

也许阅读文档:

来电者须知

在.NET Framework的主要版本中,不保证Random类中随机数生成器的实现保持不变.因此,您的应用程序代码不应假定相同的种子将在.NET Framework的不同版本中产生相同的伪随机序列.