我想实现从固定两个数字中随机抽取一个数字,然后再次抽取一个数字,直到抽取完数字为止,每次抽去的数字不能重复,请教最好的做法!谢谢!!

解决方案 »

  1.   

    参考 例如:static public class RandomCard
        {
            static Random Rdm = new Random();
            static public List<Cards> ReturnCard()
            {
                List<Cards> list = new List<Cards>();
                int itemp = 0;
                while (list.Count != 52)
                {                itemp = Rdm.Next(1,53);                
                    if (!list.Contains((Cards)(itemp)))
                    {
                        list.Add((Cards)(itemp));
                    }
                }
                return list;        }
        }
      

  2.   

    非常感谢你的帮忙,请问这里 Cards 代表什么意思??谢谢!!
      

  3.   

    分两步,1、得到完整的数字放到列表中 2、从余下的列表中随机抽取1个数字。List<int> l = new List<int>();
    for (int i = 10; i < 100; i++)
    {
        l.Add(i);
    }Random vRandom = new Random();
    while (l.Count > 0)
    {
        int j = vRandom.Next(l.Count);
        Console.WriteLine(l[j]);
        l.Remove(j);
    }
      

  4.   

    怎么我觉得应该是 public IList<实体类> ReturnCard()
    而不是static public List<Cards> ReturnCard(),是C#么?