/// <summary> 
/// 产生无重复随机数 
/// </summary> 
/// <param>个数</param> 
/// <param>最小数</param> 
/// <param>最大数</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; 
} 
asp.net 无重复随机数代码
内容版权声明:除非注明,否则皆为本站原创文章。
