【问题标题】:C# Generating a random number in while loop [duplicate]C#在while循环中生成一个随机数[重复]
【发布时间】:2018-06-29 12:49:30
【问题描述】:

我尝试了从 YouTube 视频到这个论坛的所有内容。 我以前总是在这里找到解决方案,但现在我被困住了。 我需要生成一个介于 39 和 52 之间的随机数。

这里有一些来源:

case Form1.number.WITHRANDOM:
{
    int i = 0;
    while (i < ammount)
    {
        i++;
        int j = 0;
        string text2 = "";
        while (j < 2)
        {
            string value = Conversions.ToString(this.random.Next(0, text.Length));
            text2 += Conversions.ToString(text[Conversions.ToInteger(value)]);
            j++;
        }
        this.numberList.Add("173" + (The random number) + text2);
    }
    break;
}

【问题讨论】:

  • 我看不出你怎么可能错过了Random class
  • 请提供与您提供的代码相关的清晰问题陈述。该代码包含对Random.Next() 的调用,因此不清楚您在问什么。

标签: c# random auto-generate


【解决方案1】:

您应该使用Random 类。它的Next 方法返回一个指定范围内的随机整数(在minValuemaxValue 之间):

public virtual int Next(int minValue, int maxValue)

所以,在你的情况下,这是代码:

Random random = new Random();
int number = random.Next(39, 52);

【讨论】:

  • Microsoft Docs:Next(Int32, Int32) 方法允许您指定返回的随机数的范围。但是,指定返回数字上限的 maxValue 参数是独占值,而不是包含值。这意味着方法调用 Next(0, 100) 返回一个介于 0 和 99 之间的值,而不是介于 0 和 100 之间的值。
猜你喜欢
  • 1970-01-01
  • 2015-12-12
  • 1970-01-01
  • 2014-11-30
  • 1970-01-01
  • 2017-11-10
  • 1970-01-01
  • 2021-12-17
  • 2017-06-22
相关资源
最近更新 更多