Adr*_*der 377
你可以试试
Random r = new Random();
int rInt = r.Next(0, 100); //for ints
int range = 100;
double rDouble = r.NextDouble()* range; //for doubles
Run Code Online (Sandbox Code Playgroud)
看一下
随机类,Random.Next方法(Int32,Int32)和Random.NextDouble方法
Vis*_*iri 35
试试下面的代码.
Random rnd = new Random();
int month = rnd.Next(1, 13); // creates a number between 1 and 12
int dice = rnd.Next(1, 7); // creates a number between 1 and 6
int card = rnd.Next(52); // creates a number between 0 and 51
Run Code Online (Sandbox Code Playgroud)
ozc*_*cho 31
就像是:
var rnd = new Random(DateTime.Now.Millisecond);
int ticks = rnd.Next(0, 3000);
Run Code Online (Sandbox Code Playgroud)
Kay*_*Kay 11
使用:
Random r = new Random();
int x= r.Next(10);//Max range
Run Code Online (Sandbox Code Playgroud)
Kon*_*mit 10
这是Darrelk 答案的更新版本。它是使用C# 扩展方法实现的。每次调用此方法时,它不会分配内存(new Random() )。
public static class RandomExtensionMethods
{
public static double NextDoubleRange(this System.Random random, double minNumber, double maxNumber)
{
return random.NextDouble() * (maxNumber - minNumber) + minNumber;
}
}
Run Code Online (Sandbox Code Playgroud)
用法(确保导入包含 RandomExtensionMethods 类的命名空间):
var random = new System.Random();
double rx = random.NextDoubleRange(0.0, 1.0);
double ry = random.NextDoubleRange(0.0f, 1.0f);
double vx = random.NextDoubleRange(-0.005f, 0.005f);
double vy = random.NextDoubleRange(-0.005f, 0.005f);
Run Code Online (Sandbox Code Playgroud)
对于以后的读者,如果您想要一个范围内的随机数,请使用以下代码:
public double GetRandomNumberInRange(double minNumber, double maxNumber)
{
return new Random().NextDouble() * (maxNumber - minNumber) + minNumber;
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
323407 次 |
最近记录: |