2015-10-11 21 views
-1

我的C#Windows窗体应用程序随机数生成器每次运行应用程序时都只返回零值。我在网上看了一下,似乎人们有时会在测试时得到一个重复的数字,但从来没有一个零。我发现,甚至更奇怪,因为我的参数指出随机数应该在1到100之间...请让我知道您的想法。谢谢!新的随机只返回一个零...为什么?

int count; 

private void Form1_Load(object sender, EventArgs e) 
{ 
    Random num = new Random(); 
    count = num.Next(1, 101); 
} 
+4

你如何观察'count'的值?您应该也可以发布该代码。 – 31eee384

+0

将事件连接到表单。双击窗体创建活动。不仅创建方法将作为事件 –

回答

5

Next(1, 101)不会返回零。我怀疑你没有注册Form1_Load事件,所以它没有运行那个代码。

零仅仅是int字段的默认值。

+0

工作这很好!谢谢。我确实需要双击designer.cs中的表单,然后将它移动到类文件中,然后运行。谢谢大家今天的帮助! – AtLeastTheresToast

1

我会提供一个更猜测,你在做什么:

Using System.Diagnostics; 

int count; 

private void Form1_Load(object sender, EventArgs e) 
{ 
    Random num = new Random(); 
    count = num.Next(1, 101); // remove your break point on this line 
    Debug.WriteLine(count); // put your break point here 
} 
2

只是这行代码添加到窗体的构造函数,它会工作:

this.Load += Form1_Load; 

由于已经说,Random.Next(0, 100)返回范围0 - 99中的数字,所以这不是为什么你总是得到这0。这只是你的方法没有被调用。