Øyv*_*hen 12
像这样使用Random类:
Random rnd = new Random();
rnd.Next(23, 10000);
Run Code Online (Sandbox Code Playgroud)
确保只初始化你的rnd对象一次,以确保它真正为你生成随机值.
如果您进行此循环:
for( int i = 0 ; i < 10; i++ ){
Random rnd = new Random();
var temp = rnd.Next(23, 10000);
}
Run Code Online (Sandbox Code Playgroud)
temp每次都是相同的,因为相同的种子用于生成rnd对象,但是像这样:
Random rnd = new Random();
for( int i = 0 ; i < 10; i++ ){
var temp = rnd.Next(23, 10000);
}
Run Code Online (Sandbox Code Playgroud)
它将生成10个唯一的随机数(但当然,偶然,两个或更多数字可能相等)
这取决于您是在寻找整数还是双精度.对于整数使用Random.Next(minValue,maxValue):
返回指定范围内的随机数.
请注意,minValue是包含的,但maxValue是独占的.
在指定范围内选择随机双精度没有等效方法.相反,您应该使用NextDouble方法选取介于0.0和1.0之间的随机数,然后使用线性变换来扩展,缩小和/或转换范围.