今天因為在做項目時要經常對List<>方法提取指定數目集合,然後就想辦法為list集合寫了一個擴充方法,我是這麼寫的
namespace System.Collections.Generic
{
public static class ListExt
{
public static List<T> GetListByNumber(this List<T> a, int ix)
{
List<T> list = new List<T>();
for (int j = 0; j < a.Count && j < ix; j++)
{
list.Add(a[j]);
}
return list;
}
}
}
但是一直報錯,說this關鍵詞錯誤,經查詢msdn的相關消息,擴充方法是.net 2.0以上才有的擴充,2.0及其以下不支援,是以不能編譯成功,但後來修改環境後還是編譯不成功,後來經調試,GetListByNumber方法後應該加上類型,應改為GetListByNumber<T>
最後的實作應該是:
public static List<T> GetListByNumber<T>(this List<T> a, int ix)
本文轉自 tongling_zzu 51CTO部落格,原文連結:http://blog.51cto.com/tongling/1144638