C# 随机数的值小于所需值
我正在创建一个随机数生成器,当我运行程序时,显示的数字可能小于所需的值 以下是我正在使用的代码:C# 随机数的值小于所需值,c#,winforms,random,C#,Winforms,Random,我正在创建一个随机数生成器,当我运行程序时,显示的数字可能小于所需的值 以下是我正在使用的代码: Random _rand = new Random(); private void RandomNumberGenerator() { int random = _rand.Next(1, 10000); string text; text = "TP0" + random.ToString(
Random _rand = new Random();
private void RandomNumberGenerator()
{
int random = _rand.Next(1, 10000);
string text;
text = "TP0" + random.ToString();
label1.Text = text;
}
private void button1_Click(object sender, EventArgs e)
{
RandomNumberGenerator();
}
每次单击该按钮,它都会生成一个新的随机数,但有时该数可能小于10000
。示例:我得到了TP08212
,但下次生成新值时,我得到了TP0724
。这是怎么发生的
如何防止已显示的数字再次显示?来自:
调用两个参数版本的Next
将始终生成[minValue,maxValue]范围内的数字。阅读文档:
您提供的最小值为1..724大于1。一切正常如果您需要五位数字,而第二位总是一位或多位,请获取1000..9999范围内的随机数:
int random = _rand.Next(1000, 10000);
如果您想要五位数字,但仍然是从1到更高的范围,请将随机数格式化为四位数字:
text = "TP0" + random.ToString("0000");
设置的范围是1-10000。有什么问题吗?如果希望值超过10000: 随机+=10000,范围为10001-20000
随机的所有值在每个新生成的编号处将其添加到数组中。检查该数组。更改为
\u rand.Next(1000,10000);
如果希望最小值为1000,最大值为10000但有时数字可能小于10000
。它总是小于10000。有什么奇怪的?如果希望固定宽度为5位,请使用random.ToString().padlift(5,'0')
text = "TP0" + random.ToString("0000");