是否可以在 2 个双精度数之间生成一个随机数?
Example:
public double GetRandomeNumber(double minimum, double maximum)
{
return Random.NextDouble(minimum, maximum)
}
然后我用以下方式调用它:
double result = GetRandomNumber(1.23, 5.34);
任何想法将不胜感激。
Yes.
Random.NextDouble 返回 0 到 1 之间的双精度值。然后将其乘以需要进入的范围(最大值和最小值之间的差),然后将其添加到基数(最小值)。
public double GetRandomNumber(double minimum, double maximum)
{
Random random = new Random();
return random.NextDouble() * (maximum - minimum) + minimum;
}
真正的代码应该随机成为静态成员。这将节省创建随机数生成器的成本,并使您能够非常频繁地调用 GetRandomNumber。由于我们每次调用都会初始化一个新的 RNG,因此如果调用速度足够快,系统时间在调用之间不会发生变化,RNG 将使用完全相同的时间戳进行播种,并生成相同的随机数流。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)