当前位置: 移动技术网 > IT编程>开发语言>.net > C#Random随机值重复的解决方法

C#Random随机值重复的解决方法

2019年06月09日  | 移动技术网IT编程  | 我要评论

生辰八字 结婚,忍迹吧,傲气仙宗

 

使用如上图所示的代码,将会出现如下情况,明明是随机,可值都是同样的,这样的随机几率也太小了,所以估计是代码有问题。


于是搜索了下,发现引起这个问题的原因是c#中的random是根据时间来产生随机数,而且生成太快。将random转到定义后就可以发现他的注释就是使用时间的种子值,如下图所示:

 

网上也有很多方法来解决,主要是两种:一是使用thread.sleep()给定需要的时间值,二是想办法使new random(int seed)中的参数随机化,参考。

不过突然灵光一闪,有了新的发现:那就是将var random = new random();这句代码移出循环即可解决,如下图所示:

我们再来看下结果:

完美

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网