需要一个随机数发生器

问题描述 投票:0回答:2

我需要生成介于-0.5和0.5之间的随机数。

我已经尝试过用户Anthony Pegram的堆栈溢出解决方案。我修改了一下(我需要在console.write行中调用和使用的方法)

public static float nextfloat()
{
     Random random = new Random();
     double val = random.NextDouble();
     val -= 0.5;
     return float.MaxValue * (float)val;
}

通过尝试这个我得到超过-0.5和0.5的数字我得到的东西

1.7 1.005等

c# random floating-point double
2个回答
6
投票

NextDouble生成0到1之间的随机数。

private static Random random = new Random();
public static double GetRandomDouble_BetweenMinusHalfPlusHalf()
{
    return random.NextDouble() - 0.5;
}

0
投票
public class MyRandomGenerator
{
    private static readonly Random _randomGenerator = new Random();

    public static float NextFloat()
    {
        var randomValue = _randomGenerator.NextDouble() - 0.5d;

        return (float)randomValue;
    }
}
© www.soinside.com 2019 - 2024. All rights reserved.