自学C#—扩展方法
C#的扩展方法,一般不是很常用,至少我不是很常用,因为它基本上都可以被其它静态方法替代,这是因为扩展方法就是一种特殊的静态方法。
我们来看看怎么声明,首先我们要声明一个静态类,在静态类中在声明一个静态方法,这个静态方法的第一个参数必需是用 this 指向所要扩展的类型:
1 public static class StringExtend 2 { 3 public static List<string> AddFirst(this List<string> strList,string strItem) 4 { 5 List<string> listItem = new List<string>(){ strItem }; 6 listItem.AddRange(strList); 7 return listItem; 8 } 9 10 }
这里的 ”this List<string> strList“ 是一个整体,它表示这个静态方法指向 List<string> 类型,由参数 strList 承接调用者的值。
调用的时候直接用扩展方法指向的类型的变量点一个扩展方法名,就像这样:
1 class Program 2 { 3 static void Main(string[] args) 4 { 5 List<string> strList = new List<string>(); 6 strList = strList.AddFirst("asd"); 7 } 8 }
扩展方法就这么简单。
浙公网安备 33010602011771号