我定义了一个枚举enum enumType
    { 
        aa=1,
        bb,
        cc,
        dd,
        ee,
        ff,
        gg,
        kk
    }我想对枚举中的值进行随机处理,然后填充到一个新的数组中。string[] array = { bb,cc,ee,cc,ff,ee,ff,ee,gg... }; 填充的内容是随机的,可以重复这个怎么做啊?请高手指教

解决方案 »

  1.   


    void Main()
    {
    string[] ss=new string[10];
    Random r=new Random();
    for(int i=0;i<10;i++)
    {
    int m=r.Next(1,8);
    ss[i]=Enum.GetName(typeof(enumType),m);

     
    }
    enum enumType
      {  
      aa=1,
      bb,
      cc,
      dd,
      ee,
      ff,
      gg,
      kk
      }
      

  2.   

    list<string> lst=new  list<string>();
    Random r=new Random();
        for(int i=0;i<10;i++)
        {
        lst.Add(Enum.GetName(typeof(enumType), int.Parse(r.Next(1,8))); 
        } 
         
      

  3.   


     int length = Enum.GetNames(typeof(enumType)).Length;
                string[] str = new string[length];
                Random r=new Random();
                for (int i = 0; i < length; i++)
                {
                    str[i] = ((enumType)r.Next(0, length+1)).ToString();
                }
      

  4.   

    或者List<string> str = Enum.GetNames(typeof(enumType)).OrderBy(k => Guid.NewGuid()).ToList();
      

  5.   

    数组哦,看错了 string[] str = Enum.GetNames(typeof(enumType)).OrderBy(k => Guid.NewGuid()).ToArray();