扩展方法,

 1 class Program
 2     {
 3         static void Main(string[] args)
 4         {
 5             List<string> list = new List<string>() { 
 6          "2","34","45","234"
 7             };
 8             List<string> lis = list.WhereExtFunc(m =>m.CompareTo("3")<0).ToList();
 9 
10 
11             List<int> intList = new List<int>() {2,3,67,8 };
12             var intl = intList.WhereExtFunc(m => m < 5).ToList();
13         }
14     }
15     /// <summary>
16     /// 扩展方法
17     /// 在静态类中的静态方法
18     /// this 指向要扩展的类型
19     /// </summary>
20     public static class ListExt
21     {
22         //这里是一个List泛型扩展方法
23         //WhereString<T>不要忘了这里的<T>
24         public static List<T>  WhereExtFunc<T>(this List<T> list, Func<T, bool> func)
25         {
26             List<T> newList = new List<T>();
27             foreach (var item in list)
28             {
29                 if (func(item))
30                 {
31                     newList.Add(item);
32                 }
33             }
34             return newList;
35         }
36     }

 

posted @ 2016-01-30 17:19  南潇湘  阅读(161)  评论(0编辑  收藏  举报