以下代码由PHP站长网 52php.cn收集自互联网 现在PHP站长网小编把它分享给大家,仅供参考
int[] index = new int[15];? for (int i = 0; i < 15; i++)? index = i;? Random r = new Random();? //用来保存随机生成的不重复的10个数? int[] result = new int[10];? int site = 15;//设置上限? int id;? for (int j = 0; j < 10; j++)? {? id = r.Next(1,site - 1);? //在随机位置取出一个数,保存到结果数组? result[j] = index[id];? //最后一个数复制到当前位置? index[id] = index[site - 1];? //位置的上限减少一? site--;? } |
Hashtable hashtable = new Hashtable();? Random rm = new Random();? int RmNum = 10;? for (int i = 0; hashtable.Count < RmNum; i++)? {? ?? int nValue = rm.Next(100);? if (!hashtable.ContainsValue(nValue) && nValue != 0)? {? ??? hashtable.Add(nValue,nValue);? ??? Console.WriteLine(nValue.ToString());? }? } |
Random ra=new Random(unchecked((int)DateTime.Now.Ticks));? int[] arrNum=new int[10];? int tmp=0;? int minValue=1;? int maxValue=10;? for (int i=0;i<10;i++)? {? tmp=ra.Next(minValue,maxValue); //随机取数? arrNum=getNum(arrNum,tmp,minValue,maxValue,ra); //取出值赋到数组中? }? .........? .........? public int getNum(int[] arrNum,int tmp,int minValue,int maxValue,Random ra)? {? int n=0;? while (n<=arrNum.Length-1)? {? if (arrNum[n]==tmp) //利用循环判断是否有重复? {? tmp=ra.Next(minValue,maxValue); //重新随机获取。? getNum(arrNum,ra);//递归:如果取出来的数字和已取得的数字有重复就重新随机获取。? }? n++;? }? return tmp;? } |
以上内容由PHP站长网【52php.cn】收集整理供大家参考研究 如果以上内容对您有帮助,欢迎收藏、点赞、推荐、分享。 (编辑:李大同)
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!
|