最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

C#生成隨機(jī)數(shù)的方法小結(jié)

 更新時(shí)間:2015年05月04日 11:51:17   作者:小小的我  
這篇文章主要介紹了C#生成隨機(jī)數(shù)的方法,實(shí)例總結(jié)了C#生成隨機(jī)數(shù)的相關(guān)技巧,非常具有實(shí)用價(jià)值,需要的朋友可以參考下

本文實(shí)例總結(jié)了C#生成隨機(jī)數(shù)的方法。分享給大家供大家參考。具體分析如下:

開始,很簡單地使用System.Random類來生成隨機(jī)數(shù)。很快,問題就來了,發(fā)現(xiàn)當(dāng)random的生成間隔小于1ms時(shí),隨機(jī)數(shù)就重復(fù)了(僅限于每次都新建Random對象),因?yàn)樾陆╮andom時(shí)候是默認(rèn)以當(dāng)前時(shí)間作為隨機(jī)種子的。將random改為單例,重復(fù)數(shù)的幾率小了,但是隨機(jī)數(shù)在一段時(shí)間后循環(huán)了(偽隨機(jī)數(shù)嘛,沒辦法,要求不了這么多的)。

所以,特意在網(wǎng)上找了一些資料,并親自作了一些性能比較,在此作些總結(jié)。

System.Random

這個(gè)是偽隨機(jī)數(shù)生成器

缺點(diǎn):生成出來的結(jié)果會(huì)循環(huán),且Random對象創(chuàng)建間隔小于1ms的時(shí)候產(chǎn)生結(jié)果會(huì)相同;
優(yōu)點(diǎn):生成速度極快;
效率:高,同一個(gè)對象產(chǎn)生1,000,000個(gè)結(jié)果只需要22ms(不含對象創(chuàng)建時(shí)間)


System.Security.Cryptography.RandomNumberGenerator

這個(gè)是用于產(chǎn)生密碼的安全隨機(jī)數(shù)生成器,產(chǎn)生出來的隨機(jī)數(shù)離散度高,產(chǎn)生1,000,000個(gè)32位(8-byte)的隨機(jī)數(shù)無重復(fù)

缺點(diǎn):速度很慢,對比System.Random是兩個(gè)數(shù)量級的效率差距;
優(yōu)點(diǎn):安全度高,產(chǎn)生的結(jié)果可看作環(huán)境無關(guān),而且可以填充任意長度的字節(jié)數(shù)組;
效率:低,同一個(gè)對象產(chǎn)生1,000,000個(gè)結(jié)果需要4221ms(不含對象創(chuàng)建時(shí)間)


System.Guid

這個(gè)是GUID(UUID)生成器,出來的是128-bit的字節(jié)數(shù)組,通常被表示為8-4-4-4-12的32個(gè)hex字符。

缺點(diǎn):生成長度一定,而且生成出來的結(jié)果可能與環(huán)境相關(guān),在高安全需求的環(huán)境不適用;
優(yōu)點(diǎn):有強(qiáng)大的數(shù)學(xué)理論支持,在每秒產(chǎn)生10億筆UUID的情況下,100年后只產(chǎn)生一次重復(fù)的機(jī)率是50%;
效率:中,產(chǎn)生1,000,000個(gè)結(jié)果需要255ms(包含Guid對象創(chuàng)建時(shí)間)


以上3個(gè)都可以當(dāng)作隨機(jī)數(shù)產(chǎn)生器,但相對于大部分的業(yè)務(wù)需求, GUID(UUID)已經(jīng)適用,而且其碰撞幾率在同一個(gè)系統(tǒng)內(nèi)幾乎是不可能的。所以在選擇產(chǎn)生器時(shí)GUID是一個(gè)不錯(cuò)的選擇。

希望本文所述對大家的C#程序設(shè)計(jì)有所幫助。

相關(guān)文章

  • js事件模型與自定義事件實(shí)例解析

    js事件模型與自定義事件實(shí)例解析

    JavaScript一個(gè)最簡單的事件模型,需要有事件綁定與觸發(fā),還有事件刪除。本文將對其具體實(shí)現(xiàn)代碼進(jìn)行解析,需要的朋友一起來看下吧
    2016-12-12
  • C# 創(chuàng)建Excel氣泡圖的實(shí)例代碼

    C# 創(chuàng)建Excel氣泡圖的實(shí)例代碼

    這篇文章主要介紹了C# 創(chuàng)建Excel氣泡圖的實(shí)例代碼,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-01-01
  • C#使用this關(guān)鍵字實(shí)現(xiàn)串聯(lián)構(gòu)造函數(shù)調(diào)用方法

    C#使用this關(guān)鍵字實(shí)現(xiàn)串聯(lián)構(gòu)造函數(shù)調(diào)用方法

    這篇文章主要介紹了C#使用this關(guān)鍵字實(shí)現(xiàn)串聯(lián)構(gòu)造函數(shù)調(diào)用方法,實(shí)例分析了使用this關(guān)鍵字串聯(lián)構(gòu)造函數(shù)的技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下
    2015-01-01
  • C#從foreach語句中枚舉元素看數(shù)組詳解

    C#從foreach語句中枚舉元素看數(shù)組詳解

    這篇文章主要給大家介紹了關(guān)于C#從foreach語句中枚舉元素看數(shù)組的相關(guān)資料,文中介紹的非常詳細(xì),對大家具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起看看吧。
    2017-05-05
  • C#使用RegNotifyChangeKeyValue監(jiān)聽注冊表更改的方法小結(jié)

    C#使用RegNotifyChangeKeyValue監(jiān)聽注冊表更改的方法小結(jié)

    RegNotifyChangeKeyValue的最后一個(gè)參數(shù)傳遞false,表示以同步的方式監(jiān)聽,這篇文章主要介紹了C#使用RegNotifyChangeKeyValue監(jiān)聽注冊表更改的方法小結(jié),需要的朋友可以參考下
    2024-06-06
  • C#?網(wǎng)域賬號(Domain)驗(yàn)證的實(shí)現(xiàn)

    C#?網(wǎng)域賬號(Domain)驗(yàn)證的實(shí)現(xiàn)

    本文主要介紹了C#?網(wǎng)域賬號(Domain)驗(yàn)證的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2024-04-04
  • C# Newtonsoft.Json庫的常用屬性和方法詳解

    C# Newtonsoft.Json庫的常用屬性和方法詳解

    Newtonsoft.Json(也稱為Json.NET)是一個(gè)非常流行的用于處理JSON數(shù)據(jù)的庫,它提供了豐富的屬性和方法,用于序列化和反序列化JSON數(shù)據(jù),下面將通過C#代碼詳細(xì)講解一些常用的屬性和方法,并提供詳細(xì)的代碼注釋,需要的朋友可以參考下
    2025-03-03
  • C# GDI在控件上繪圖的方法

    C# GDI在控件上繪圖的方法

    這篇文章主要介紹了C# GDI在控件上繪圖的方法,包括了常見的鼠標(biāo)事件及繪圖操作,需要的朋友可以參考下
    2014-09-09
  • Unity3D游戲開發(fā)數(shù)據(jù)持久化PlayerPrefs的用法詳解

    Unity3D游戲開發(fā)數(shù)據(jù)持久化PlayerPrefs的用法詳解

    在本篇文章里小編給大家整理了關(guān)于Unity3D游戲開發(fā)之?dāng)?shù)據(jù)持久化PlayerPrefs的使用的相關(guān)知識點(diǎn)內(nèi)容,需要的朋友們參考下。
    2019-08-08
  • .NET使用C#導(dǎo)入Excel文件數(shù)據(jù)到數(shù)據(jù)庫

    .NET使用C#導(dǎo)入Excel文件數(shù)據(jù)到數(shù)據(jù)庫

    將Excel文件中的數(shù)據(jù)導(dǎo)入到數(shù)據(jù)庫中不僅能夠提升數(shù)據(jù)處理的效率和準(zhǔn)確性,還能極大地促進(jìn)數(shù)據(jù)分析和決策制定的過程,本文將介紹如何在.NET平臺(tái)使用C#導(dǎo)入Excel文件數(shù)據(jù)到數(shù)據(jù)庫中,需要的可以參考下
    2024-12-12

最新評論

晋城| 和田县| 黄冈市| 博爱县| 乌什县| 日土县| 海丰县| 遂宁市| 巴林右旗| 甘孜县| 临汾市| 塔河县| 木兰县| 句容市| 清徐县| 安溪县| 大埔区| 杭锦后旗| 新乐市| 兴城市| 舒城县| 黄骅市| 嵊泗县| 威信县| 太原市| 康马县| 孙吴县| 平果县| 台东县| 周至县| 正蓝旗| 莱州市| 乐平市| 卢龙县| 亚东县| 和顺县| 炎陵县| 双桥区| 开平市| 荣成市| 南京市|