2012-11-10 25 views
0

如何用1递增顺序生成1000到9999之间的数字?用一个递增顺序生成数字,范围在

我试着用随机类,它工作正常,但不生成随机数,我想要在范围内生成数字。

private int RandomNumber(int min, int max) 
{ 
    Random random = new Random(); 
    return random.Next(min, max); 
} 

然后我把这个方法:

int returnValue = RandomNumber(5, 20); 
+0

试一试这可能是有用的http://stackoverflow.com/questions/363681/generating-random-number-in-a-range-with-java –

回答

0

您可以简单地这样来做:

public double RandomNumber(int min, int max) 
{ 
    return Random.NextInt(min, max) ; 
} 
0

如何从1000号至9999以1个递增的顺序?

您可以使用循环生成范围内的数字。

for(int i=1000; i < 9999; i++) 
{ 
    Console.WriteLine(i); 
} 

您可以使用List来存储生成的数字。

List<int> lstNumbers = new List<int>(); 
for(int i=1000; i < 9999; i++) 
{ 
    lstNumbers.Add(i) 
} 

您可以使用LINQ IEnumerable.Range()方法为好。

IEnumerable<int> squares = Enumerable.Range(1000 , 9999).Select(x => x * x); 
foreach (int num in squares) 
{ 
     Console.WriteLine(num); 
} 
+0

我给你一个例子。它可能会帮助你理解这个问题。 private int RandomNumber(int min,int max) { Random random = new Random(); return random.Next(100,200); } 因此,它会给随机数的范围,即:有时候101,123,128等...... 但我想这个数字会产生像这样:101,102,103,104,105,106 ..... 200。 希望你很清楚。 –

+0

我给出的解决方案已经做了你在例子中说的话。因为你不需要Random提供什么,所以你必须忘记Random,那么使用Random有什么意义。随机应该是无序的,你不能强制随机类生成数字是序列。你可以使用循环从刚开始的循环开始,而不是零。 – Adil

+0

谢谢..我会尝试循环。 –

0

调用Random.Next(int,int)会给你一个在该范围内的随机数。你应该澄清你的问题。

0

执行SQL Sequence的最佳方法是每次调用它,因为如果重新启动IIS,随机数进程将重新开始。