当前位置: 首页 > 图文教程 > 网络编程 > ASP.NET > asp.net 无重复随机数代码

ASP.NET
C#中使Datawindow.Net组件处理数据
在.net开发中几个重要的认识误区(1)
WML教程11:文本框控件(Input)
WML教程6:动作和链接
在WEB自定义控件中实现事件及自动保存值
WML教程14:WML 文本处理
表单启动太慢时显示一个等待图标(类似Windows下的时间沙漏)
ADO.NET学习笔记(二)
使用HttpContext中的User属性来实现用户身份验证之用户验证票篇
由DataGrid翻页所导致的诸多问题的解决方案
动态加载类的原理:元数据的使用
用C#实现Des加密和解密
快速对图片进行滤光处理
可以代替窗体Refresh方法的函数
『原创』适合初学的简单3D碰撞检测初探(对于3D编程初学人员)
《Essential .Net》读书笔记 - Chapter 3
Lion.Web.WebHtmlEditor 1.0 Hack 攻略
数据库事务处理的另外一种方法
[WSE]Web Service—后台侦听服务通过WSE2.0建立订阅/发布关系
给windows服务添加描述

ASP.NET 中的 asp.net 无重复随机数代码


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-13   浏览: 160 ::
收藏到网摘: n/a

asp.net产生无重复随机数的实现代码
复制代码 代码如下:

/// <summary>
/// 产生无重复随机数
/// </summary>
/// <param name="num">个数</param>
/// <param name="minValue">最小数</param>
/// <param name="maxValue">最大数</param>
/// <returns>数组</returns>
public int[] getNum(int num, int minValue, int maxValue)
{
Random ra = new Random(unchecked((int)DateTime.Now.Ticks));
int[] arrNum = new int[num];//注意:数组中各元素的初始值是0,当0在取值范围内时要另处理
int tmp = 0;
for (int i = 0; i < num; i++)
{
tmp = getRandomNum(tmp, minValue, maxValue, ra);//取出值赋到数组中
if (Array.IndexOf(arrNum, tmp) < 0)//判断是否存在,不存在的话元素tmp的索引应为-1
{
arrNum[i] = tmp;
}
else
{
i = i - 1;
}
}
return arrNum;
}
public int getRandomNum(int tmp, int minValue, int maxValue, Random ra)
{
tmp = ra.Next(minValue, maxValue);
return tmp;
}