我希望每次应用程序运行时使用Random类获得随机值,并且只有在我更改种子值或初始化随机类时才会有所不同.
我声明Random random = new Random();为全局参数.
然后我打印3个随机双打:
for (int i = 0; i < 3; i++)
Console.WriteLine(random.NextDouble())
Run Code Online (Sandbox Code Playgroud)
每次应用程序运行时我都会得到不同的值
例如,我第一次运行应用程序时得到值0.454,0.256,0.100
第二次0.578,0.123,0.001
但我想要的是,每次应用程序运行时,我都会得到相同的数字
例如我第一次运行app我得到0.454,0.256,0.100第二次0.454,0.256,0.100
为随机构造函数提供一个种子,例如1,尽管它可以是任何数字:
Random random = new Random(1);
Run Code Online (Sandbox Code Playgroud)
现在,每次你得到相同的数字,所以它不会是随机的.如果您不提供,则默认情况下将当前时间戳作为种子,因此您可以通过控制种子来控制值.
这是一个完整的解决方案:
static void Main(string[] args)
{
Random random = new Random(1);
for (int i = 0; i < 3; i++)
Console.WriteLine(random.NextDouble());
Console.Read();
}
Run Code Online (Sandbox Code Playgroud)
OUTPUT:
0.248668584157093
0.110743977181029
0.467010679872246
Run Code Online (Sandbox Code Playgroud)