Welcome 微信登录
编程资源 图片资源库 蚂蚁家优选 PDF转换器 软件资源

软件开发小程序制作系统集成与运维空间租用硬件开发视频监控技术咨询与支持——联系电话:0311-88999002/88999003

首页 / 网页编程 / ASP.NET / 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;
}