C#学习教程:为什么C#的随机下限包含在内,但上限是否排他?分享


为什么C#的随机下限包含在内,但上限是否排他?

以此代码为例:

Random rnd = new Random(); int rndNumber = rnd.Next(0,101); 

人们可能会发生以下任何一种情况:
-rndNumber包含0到101之间的随机整数
-rndNumber包含1到100之间的随机整数

实际发生的是,rndNumber包含0到100之间的随机整数。为什么会这样?

我明白上限是独家的,但为什么下限包括在内? 为什么这不一致?

这种方法与使用零作为其初始元素的编号方案一致。 这在几种情况下很方便,因为您不必进行任何算术运算或面临罕见的逐个错误

当您选择数组的随机元素时:

 var rndElement = myArray[rnd.Next(0, myArray.Length)]; 

在多个点分割间隔时,从每个子间隔中选择随机元素:

 var endpoints = new[] {0, 10, 17, 36, 80}; for (int i = 0 ; i+1 < endpoints.Length ; i++) { var from = endpoints[i]; var to = endpoints[i+1]; Console.WriteLine("({0}..{1}) : {2}", from , to, rnd.Next(from, to)); } 

它还可以更轻松地计算可以生成多少个不同的值。

上述就是C#学习教程:为什么C#的随机下限包含在内,但上限是否排他?分享的全部内容,如果对大家有所用处且需要了解更多关于C#学习教程,希望大家多多关注---猴子技术宅(www.ssfiction.com)

本文来自网络收集,不代表猴子技术宅立场,如涉及侵权请点击右边联系管理员删除。

如若转载,请注明出处:https://www.ssfiction.com/ckf/959883.html

发表评论

邮箱地址不会被公开。 必填项已用*标注