成人午夜激情影院,小视频免费在线观看,国产精品夜夜嗨,欧美日韩精品一区二区在线播放

當前位置:首頁>>開發編程>>VS.NET>>新聞內容
[本站原創]ASP.NET的隨機數應用(C#)
作者:icech學習筆記 發布時間:2004-7-5 11:04:24 文章來源:西部E網

    計算機不可能產生完全隨機的數字,ASP.NET中的隨機數發生器都是通過一定的算法對事先選定的隨機種子做復雜的運算,用產生的結果來近似的模擬完全隨機數,這種隨機數被稱作偽隨機數,Ststem.Random表示偽隨機數生成器。

    偽隨機數是以相同的概率從一組有限的數字中選取的。所選數字并不具有完全的隨機性,但是從實用的角度而言,其隨機程度已足夠了。

    偽隨機數的選擇是從隨機種子開始的,所以為了保證每次得到的偽隨機數都足夠地“隨機”,隨機種子的選擇就顯得非常重要。如果隨機種子一樣,那么同一個隨機數發生器產生的隨機數也會一樣。一般地,我們使用同系統時間有關的參數作為隨機種子,這也是 .net Framework 中的隨機數發生器默認采用的方法。

    一、初始化偽隨機數發生器

    我們可以采用系統時間為隨機種子的方式來初始化偽隨機數生成器,如:
    Random ro=new Random();
    或者
    Random ro=new Random(unchecked((int)DateTime.Now.Ticks));

    也可以指定一個隨機種子,如:
    Random ro=new Random(10);

    二、產生需要的隨機數

    為了方便表述和演示,icech在這里直接在代碼中說明產生各類隨機數的方法:

using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;

namespace WebApplication1
{
 /// <summary>
 /// WebForm1 的摘要說明。
 /// </summary>
 public class WebForm1 : System.Web.UI.Page
 {
  private void Page_Load(object sender, System.EventArgs e)
  {
   // 在此處放置用戶代碼以初始化頁面
   // 初始化偽隨機數發生器
   Random ro=new Random(unchecked((int)DateTime.Now.Ticks));

   // 方法1:指定隨機數上下限,產生上下限中的隨機整數
   String RoInt=ro.Next(1,20).ToString();
   Response.Write("RoInt="+RoInt+"<br>");

   // 方法2:返回系統時間作為隨機種子的隨機整數
   String RoInt2=ro.Next().ToString();
   Response.Write("RoInt2="+RoInt2+"<br>");

   // 方法3:指定最大值非負隨機整數
   String RoInt3=ro.Next(10).ToString();
   Response.Write("RoInt3="+RoInt3+"<br>");

   // 方法4:生成0.0和1.0之間的隨機數
   String RoDouble=ro.NextDouble().ToString();
   Response.Write("RoDouble="+RoDouble+"<br>");

   // 方法5:用隨機數填充指定字節數組
   // 字節數組的每個元素均設置為
   // 一個大于或等于零而小于或等于 MaxValue 的隨機數
   // MaxValue = 255
   Byte[] b = new Byte[5];
   ro.NextBytes(b);
   for (int i = 0; i < 5; i++)
   {
    Response.Write("RoBytes"+i+"="); 
    Response.Write(b[i]+"<br>");
   }

  }

  #region Web 窗體設計器生成的代碼
  override protected void OnInit(EventArgs e)
  {
   //
   // CODEGEN: 該調用是 ASP.NET Web 窗體設計器所必需的。
   //
   InitializeComponent();
   base.OnInit(e);
  }
  
  /// <summary>
  /// 設計器支持所需的方法 - 不要使用代碼編輯器修改
  /// 此方法的內容。
  /// </summary>
  private void InitializeComponent()
  {   
   this.Load += new System.EventHandler(this.Page_Load);
  }
  #endregion
 }
}

    三、產生隨機數的結果

    這里產生出一組隨機數,大家參考一下他們的格式。

 RoInt=13
 RoInt2=522075042
 RoInt3=2
 RoDouble=0.800674877036677
 RoBytes0=91
 RoBytes1=15
 RoBytes2=78
 RoBytes3=252
 RoBytes4=96

    ASP.NET產生隨機數的方法比較簡單,方式和操作也很靈活。由于網絡安全的因素,隨機數越來越多的用在各類程序中,如登陸驗證、注冊驗證等等。希望icech的這個學習筆記能給你一些幫助。


最新更新
·C#中使用Split分隔字符串的技
·VS2008開發中Windows Mobile
·PC機和移動設備上絕對路徑的
·C#程序加殼的方法(使用Sixx
·當前上下文中不存在名稱Conf
·請插入磁盤:Visual Studio 2
·用VS.NET讀取Flash格式文件信
·在ASP.NET中使用AJAX的簡單方
·VS.NET 2005中常用的一些代碼
·安裝VS.NET 2005 SP1補丁全攻
相關信息
畫心
愚愛
偏愛
火苗
白狐
畫沙
犯錯
歌曲
傳奇
稻香
小酒窩
獅子座
小情歌
全是愛
棉花糖
海豚音
我相信
甩蔥歌
這叫愛
shero
走天涯
琉璃月
Nobody
我愛他
套馬桿
愛是你我
最后一次
少女時代
灰色頭像
斷橋殘雪
美了美了
狼的誘惑
我很快樂
星月神話
心痛2009
愛丫愛丫
半城煙沙
旗開得勝
郎的誘惑
愛情買賣
2010等你來
我叫小沈陽
i miss you
姑娘我愛你
我們都一樣
其實很寂寞
我愛雨夜花
變心的玫瑰
犀利哥之歌
你是我的眼
你是我的OK繃
貝多芬的悲傷
哥只是個傳說
丟了幸福的豬
找個人來愛我
要嫁就嫁灰太狼
如果這就是愛情
我們沒有在一起
寂寞在唱什么歌
斯琴高麗的傷心
別在我離開之前離開
不是因為寂寞才想你
愛上你等于愛上了錯
在心里從此永遠有個你
一個人的寂寞兩個人的錯
主站蜘蛛池模板: 那坡县| 石城县| 通道| 漳平市| 扎鲁特旗| 理塘县| 翼城县| 运城市| 台江县| 兴义市| 星子县| 阿瓦提县| 洛宁县| 黎川县| 湄潭县| 卫辉市| 巴中市| 汽车| 句容市| 遂昌县| 通化县| 南通市| 钦州市| 清新县| 安岳县| 营山县| 濮阳县| 鄂州市| 辉南县| 江达县| 泰州市| 贡嘎县| 岚皋县| 井研县| 柘荣县| 浦江县| 松潘县| 施秉县| 汶川县| 黎平县| 雅江县|