c#编写,随机一组数字,不重复,以1到18为例
首先,先建立 两个数组或者list,存放
randomArray() 产生随机数,并加入到list中,
getRandom() 判断产生的随机数是否已经在旧的list存在或者是已经在新的list中存在,不存在就加入到newArray中
private List oldArray = new List { 0, 0, 0, 0, 0, 0, 0 };//初始一个oldArray,存放上一次产生的随机数组
private List newArray;//定义newArray 用来存放产生的随机数,使用
public void randomArray()
{Random ra = new Random();
newArray = new List();
while(newArray.Count<7)
{
int random= ra.Next(1, 18);
if (newArray.Count == 0)
{
newArray.Add(random);
}
else getRandom(random);
}
oldArray = newArray;
}
public void getRandom(int rand)
{
for (int j = 0; j < oldArray.Count; j++)
{
if (oldArray[j] == rand)
{
return ;
}
}
for (int k = 0; k < newArray.Count; k++)
{
if (newArray[k] == rand)
{
return ;
}
}
newArray.Add(rand);
}