问题背景:
每天将在学号20130701~20130716中随机抽出一位同学做演讲问题描述如下:
1.创建string[] str,不设定它的长度;
2.使用Random r=new Random();中的r.next(20130701,20130717)方法每次产生一个随机数a;
3.将a.Tostring()赋给 str[i],str的长度要随着每一次的赋值而增加;
4.在产生下一个随机数a赋给str[i]前,要遍历一下str[],如果已经存在相同的,将重新产生随机数String,数组

解决方案 »

  1.   

    改用list
         List<string> str=new List<string>();
                str.Add(a);
      

  2.   

    STRINGBUILDER 
    LIST<STRING>
    都可以的.看你怎么用了.用法都一样.ADD加,CLEAR清空;长度都是任意的.加多少是多少,清空就为零.
    分送来
      

  3.   

    可以用ArrayList类型来存储,兼有数组和列表的功能。
      

  4.   

    string[] result = Enumerable.Range(701, 16).OrderBy(x => Guid.NewGuid().GetHashCode()).ToList().Select(x => "20130" + x.ToString()).ToArray();
      

  5.   

    听一楼版主的话吧,用list<string>吧,少年。如果你非得用string[]的话,那你每次都新建一个数组,长度变长一点,把原来的数组内的元素都copy过来。但很明显,用list<string>好很多。
      

  6.   

    Random r=new Random();中的r.next(20130701,20130717)方法每次产生一个随机数a;ArralyList al = new ArralyList();
    if(!al.Contains(r.ToString())
    {
       al.Add(r);
    }外面加一个循环就OK了!