1. 如何定义一个扩展方法
定义一个扩展方法,分为三步,第一步,定义一个静态类;第二步,定义一个静态方法;第三步,这个静态方法的第一个参数为要定义扩展方法的基类型并且需要this关键字进行修饰。
2. 实例
public static class StringBuilderExtensions
{
public static Int32 IndexOf (this StringBuilder sb,Char value)
{
for (Int32 index = 0; index <sb.Length;index++)
{
if (sb[index] == value)
return index;
}
return -1;
}
}
这里为StringBuilder类定义一个指定字符在此实例中的第一个匹配项的索引的方法.
3. 使用。
与普通方法一样使用即可
StringBuilder sb = new StringBuilder("Hello,My name is zhangsan.");//初始化字符串
int index = sb.IndexOf('M');
Console.WriteLine(index.ToString());
Console.ReadKey();