我怀疑答案是' 因为数学 ',但我希望有人能在基层提供更多的见解......
我今天在BCL源代码中探讨,看看我之前使用过的某些类是如何实际实现的.我以前从未想过如何生成(伪)随机数,所以我决定看看它是如何完成的.
完整来源:http://referencesource.microsoft.com/#mscorlib/system/random.cs#29
private const int MSEED = 161803398;
Run Code Online (Sandbox Code Playgroud)
每次播种Random()类时都会使用此MSEED值.
无论如何,我看到了这个"神奇的数字" - 161803398 - 而且我没有最简单的想法为什么选择这个数字.它不是一个素数或2的幂.对于一个似乎更重要的数字而言,它不是"中途".我用二进制和十六进制看了它,它看起来像是一个数字给我.
我试着在谷歌搜索这个号码,但我一无所获.