對於Random.Next()生成隨機數重復的問題


Random.Next() :用這個函數生成隨機數生成一個時沒什么問題,可當需要循環生成N個隨機數時會發現這些數值都一樣,可謂是很坑的,

在c 或c++中我們知道可以用時間作為種子生成隨機數這樣就不會出現一直重復的問題,那么在C#中怎么做到這樣的效果?看下面的帶碼:

var Seed = Guid.NewGuid().GetHashCode();
var value = new Random(Seed);
i =value.Next(1,100);

其中Guid表示全局唯一標識符NewGuid()可以獲得一個Guid實例,獲取該實例的哈希值就可以了,然后以這個值作為類似與時間的效果

 
         
         
       


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM