现在的位置: 首页 > 综合 > 正文

随机泛型

2012年09月10日 ⁄ 综合 ⁄ 共 592字 ⁄ 字号 评论关闭

public static List<T> GetRandomList<T>(List<T> inputList)
{
    //Copy to a array
T[] copyArray = new T[inputList.Count];
    inputList.CopyTo(copyArray);

    //Add range
   
List<T> copyList = new List<T>();
    copyList.AddRange(copyArray);

    //Set outputList and random
   
List<T> outputList = new List<T>();
    Random rd = new Random(DateTime.Now.Millisecond);

    while (copyList.Count > 0)
    {
        //Select an index and item
       
int rdIndex = rd.Next(0, copyList.Count - 1);
        T remove = copyList[rdIndex];

        //remove it from copyList and add it to output
       
copyList.Remove(remove);
        outputList.Add(remove);
    }
    return outputList;
}

抱歉!评论已关闭.