温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

C#中random.Next方法怎么用

发布时间:2021-09-22 14:49:22 来源:亿速云 阅读:509 作者:小新 栏目:开发技术

这篇文章主要介绍C#中random.Next方法怎么用,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

  .NETRandom类在生成随机数方面做得相当不错。但请注意,如果您使用相同的数字播种,则每次都会获得相同的“随机”数字。如果您不希望此行为不提供种子。如果您使用的是随机数生成器而不是内置的.NET生成器,那么请查看random.org。

  C#中的random.Next方法

  1.random.Next():返回非负的一个随机数

  2.random.Next(MaxValue):返回一个小于所指定最大值的非负随机数(注意:a.是小于最大值要生成的随机数的上界(随机数不能取该上界值);b.maxValue类型:[System..::.Int32],maxValue必须大于等于零。

  3.Random..::.Next(minValue,maxValue):返回一个指定范围内的随机数.

  4.返回值类型:[System..::.Int32],一个大于等于minValue且小于maxValue的32位带符号整数,即:返回的值范围包括minValue但不包括maxValue。如果minValue等于maxValue,则返回minValue。

  Random.Next()的概率

  我想写一个抽奖程序,需要随机选择1-20000范围内的20000个数字。代码如下:

  Randomr=NewRandom(seed);//seedisa6digitse.g123456

  inti=0;

  while(true){

  r.Next(2000000);

  i++;

  if(i>=20000)

  break;

  }

  我的问题是:

  它能确保所有数字从1到2000000的相同可能性吗?

  r.Next()中是否包含上限2000000?

  st

  包含上限?

  不,上限是独占的,因此您必须使用2000001来包含2000000。

  有什么建议吗?

  让我冒昧地建议不要使用while(true)/break。只需将if的条件放在while语句中:

  Randomr=NewRandom(seed);//seedisa6digitse.g123456

  inti=0;

  while(i++<20000)

  {

  r.Next(1,2000001);

  }

以上是“C#中random.Next方法怎么用”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注亿速云行业资讯频道!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI