设为首页  
联系我们  
加入收藏  
网页制作 冲浪宝典 图形图像 操作系统 软件教学 编程开发 认证考试 安全技术 站长专区 文学驿站 娱乐天地 游戏天地 办公软件
文章搜索
您的位置: 首页 >> 文章首页 >> 编程开发 >> 网络编程 >> ASP.NET实例 >> ASP.net随机数应用实例
精品推荐
ASP.NET实例点击TOP10
·ASP.NET 程序中常用的三十三种代码
·设计ASP.NET新闻管理系统
·C#版的网站新闻发布系统
·利用ASP.NET构建网上考试系统
·ASP.NET的实时天气及24小时天气预报(C#)
·基于css样式绑定的样式驱动式AJAX程序开发(.net实现)
·ASP.NET里常用的JS
·用ASP.NET和XML做的新闻系统
·自己写的一个图形验证码页面(Asp.Net2.0通过)
·Asp.net+Xml开发网络硬盘
网络编程点击TOP10
·ASP.NET 程序中常用的三十三种代码
·CHK文件恢复工具
·.NET 初 级 读 本
·c#操作word表格
·『原创』C#中TreeView类操作全攻略:建立树,新增节点,删除节点,修改节点,拖动节点,与Oracle数据库交互操作(一)
·我的.NET书架 (入门篇)
·从零开始学ASP.NET(基础篇)
·十天学会ASP.net之第一天
·用C#实现木马程序
·官方水晶报表 .NET 应用程序实例下载 (C#、Visual C++.NET)
精选专题

ASP.net随机数应用实例

作者: 来源:http://www.xgdown.com/ 时间:2005-11-5 0:03:37

ASP.net随机数应用实例(2)

Random.Sample()方法是保护方法,只允许子类的对象访问,而Random.Sample()方法则可以看作是Random.Sample()的公开版本。一般地,用户在Random的子类中重写Sample()方法来得到更一般的分布。

这个例子中,我们使用Random.Next()方法来产生随机数。

下面这个函数是这个例子的核心,我们利用他来产生一个随机的int数组:

private int []GetRandomArray(int Length,int Up,int Down){ int iFirst=0; int []rtArray=new Int32[Length]; Random ro=new Random(Length*unchecked((int)DateTime.Now.Ticks)); iFirst=ro.Next(Up,Down); rtArray[0]=iFirst; for(int i=1;i


读者或许都注意到了,我们采用了一种相当麻烦的方式来产生这个随机数组,为什么不简单地使用如下代码呢?请先看下面代码,这里我们使用了系统时间作为随机种子,连续获取两个随机数,并且将其输出:

< %@ Page Language="C#" Debug="true" Trace="false" TraceMode="SortByCategory"% >< % @Import namespace="System" % >
< script language=C# runat=server >
public void Page_Load(object sender,EventArgs e){ int re=0; int re1=0; GetRandomDefault(ref re); GetRandomDefault(ref re1); RandomNum.Text=re.ToString(); RandomNum.Text+=" "+re1.ToString();}private void GetRandomDefault(ref int re){ Random ro=new Random(unchecked((int)DateTime.Now.Ticks)); re=ro.Next(10,20);}private void GetRandomByInt(ref byte []re){ Random ro=new Random(); ro.NextBytes(re);}
< /script >
< html >
< head >
< title >随机数测试< /title >
< meta http-equiv="Content-Type" content="text/html; charset=gb2312" >
< /head >

< body bgcolor="#FFFFFF" text="#000000" >
< form runat=server >
< asp:Label id="RandomNum" runat=server / >

< /form >
< /body >
< /html >



下面是笔者机器上产生的结果的截图:



是的,如你所见,产生了一样的两个随机数,无论重复多少次,都是一样的。原因在哪里呢?

 

不要以为使用系统时间作为随机种子就万无一失了——如果应用程序在一个较快的计算机上运行,则该计算机的系统时钟可能没有时间在此构造函数的调用之间进行更改,Random 的不同实例的种子值可能相同。这种情况下,我们就需要另外的算法来保证产生的数字的随机性。所以为了保证产生的随机数足够“随机”,我们不得不使用复杂一点的方法来获得随机种子。

共4页 9 7 [1] [2] [3] [48 :>

ASP.net随机数应用实例 相关文章:
ASP.net随机数应用实例 相关软件:
特别声明:本站除部分特别声明禁止转载的专稿外的其他文章可以自由转载,但请务必注明出处和原始作者。文章版权归文章原始作者所有。对于被本站转载文章的个人和网站,我们表示深深的谢意。如果本站转载的文章有版权问题请联系编辑人员,我们尽快予以更正。
转载请注明来源:http://www.xgdown.com