我试图在循环中生成随机数.我在循环开始之前创建了一个Random类的实例,但它是不可访问的.我得到的错误是:
由于其保护级别,'System.Random.Sample()'无法访问
我的代码是:
Random random = new Random();
while (ready == false)
{
double h = random.Sample();
//Lots of things done here
}
Run Code Online (Sandbox Code Playgroud)
怎么了?
Sample方法的文档解释了这种行为:
重要
Sample方法受到保护,这意味着它只能在Random类及其派生类中访问.要从Random实例生成介于0和1之间的随机数,请调用NextDouble方法.
Sample如果要创建自己的自定义随机数生成器,则该方法的目的是覆盖它.如果你只是想使用的Random类,NextDouble是调用正确的方法.
你需要使用NextDouble方法.
double h = random.NextDouble();
Run Code Online (Sandbox Code Playgroud)
您尝试调用的方法不是public错误消息中所述.