国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

C#生成不重復隨機數的方法

2019-11-14 15:49:58
字體:
來源:轉載
供稿:網友

在使用Random類生成隨機數時,我們可能會碰到生成隨機數重復的問題。

比如我們要生成6位數字驗證碼,雖然也是使用Random,但是可能出現111111,999999這樣的情況。

這是因為在實例化Random類時,如果隨機種子不填寫,默認是以時間線作為種子進行偽隨機運算,當計算運行速度過快時,導致所有的隨機種子都是一個值。

解決的方法也很簡單,我們使用Guid的哈希碼作為種子值,就不會重復了,代碼如下:

 1     public class RandomHelper 2     { 3         /// <summary> 4         ///生成制定位數的隨機碼(數字) 5         /// </summary> 6         /// <param name="length"></param> 7         /// <returns></returns> 8         public static string GenerateRandomCode(int length) 9         {10             var result = new StringBuilder();11             for (var i = 0; i < length; i++)12             {13                 var r = new Random(Guid.NewGuid().GetHashCode());14                 result.Append(r.Next(0, 10));15             }16             return result.ToString();17         }18     }

Done.

 


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 慈溪市| 万载县| 政和县| 西丰县| 黎川县| 土默特左旗| 凌云县| 宜州市| 永州市| 秦皇岛市| 比如县| 西充县| 台南市| 平陆县| 商都县| 固始县| 栾川县| 荆门市| 腾冲县| 正阳县| 许昌市| 靖江市| 涞源县| 富平县| 沁阳市| 奎屯市| 磴口县| 隆尧县| 泰来县| 尉氏县| 红原县| 犍为县| 大名县| 台江县| 延川县| 鄂托克旗| 南郑县| 星座| 武安市| 尖扎县| 怀远县|