C# | Random.Next() Method
Last Updated :
30 Apr, 2019
The
Next() Method of
System.Random class in C# is used to get a random integer number. This method can be overloaded by passing different parameters to it as follows:
- Next()
- Next(Int32)
- Next(Int32, Int32)
Next() Method
This method is used to returns a non-negative random integer.
Syntax:
public virtual int Next ();
Return Value: This method returns the 32-bit signed integer which is greater than or equal to 0 and less than
MaxValue.
Example:
csharp
// C# program to illustrate the
// Random.Next() Method
using System;
class GFG {
// Driver code
public static void Main()
{
// Instantiate random number generator
Random rand = new Random();
// Print 10 random numbers
Console.WriteLine("Printing 10 random numbers");
for (int i = 1; i <= 10; i++)
Console.WriteLine("{0} -> {1}", i, rand.Next());
}
}
Output:
Printing 10 random numbers
1 -> 1386420123
2 -> 2133003862
3 -> 981665925
4 -> 495382685
5 -> 1127976381
6 -> 824414652
7 -> 213006792
8 -> 1948108820
9 -> 214839986
10 -> 261560448
Next(Int32) Method
This method is used to get a non-negative random integer which is less than the specified maximum.
Syntax:
public virtual int Next (int maxValue);
Here,
maxValue is the upper boundary of the random number to be generated. It must be greater than or equal to 0.
Return Value: The function returns a 32-bit signed integer which is greater than or equal to 0, and less than
maxValue. However, if
maxValue equals 0,
maxValue is returned.
Exception: This method will give
ArgumentOutOfRangeException if the
maxValue is less than 0.
Example:
csharp
// C# program to illustrate the
// Random.Next(Int32) Method
using System;
class GFG {
// Driver code
public static void Main()
{
// Instantiate random number generator
Random rand = new Random();
// Print 10 random numbers less than 100
Console.WriteLine("Printing 10 random numbers less than 100");
for (int i = 1; i <= 10; i++)
Console.WriteLine("{0} -> {1}", i, rand.Next(100));
}
}
Output:
Printing 10 random numbers less than 100
1 -> 19
2 -> 94
3 -> 14
4 -> 54
5 -> 94
6 -> 73
7 -> 39
8 -> 42
9 -> 18
10 -> 77
Next(Int32, Int32) Method
This method is used to get the random integer that is within a specified range.
Syntax:
public virtual int Next (int minValue, int maxValue);
Parameters:
- maxValue: It is the exclusive upper boundary of the random number generated. It must be greater than or equal to minValue.
- minValue: It is the inclusive lower bound of the random number returned.
Return Value: The function returns a 32-bit signed integer greater than or equal to
minValue and less than
maxValue; that is, the range of return values includes
minValue but not
maxValue. If
minValue equals
maxValue,
minValue is returned.
Exception: This method will give the
ArgumentOutOfRangeException if the
minValue is greater than
maxValue.
Example:
csharp
// C# program to illustrate the
// Next(Int32, Int32) Method
using System;
class GFG {
// Driver code
public static void Main()
{
// Instantiate random number generator
Random rand = new Random();
// Print 10 random numbers between 50 and 100
Console.WriteLine("Printing 10 random numbers"+
" between 50 and 100");
for (int i = 1; i <= 10; i++)
Console.WriteLine("{0} -> {1}", i, rand.Next(50, 100));
}
}
Output:
Printing 10 random numbers between 50 and 100
1 -> 91
2 -> 85
3 -> 93
4 -> 74
5 -> 88
6 -> 77
7 -> 92
8 -> 76
9 -> 77
10 -> 52
Reference: