擴充方法

C#3.0 加上的語法,可以現有的類型加上擴充方法

擴充方法可以在現有的類型上加上自己寫的方法,也可以讓程式碼看起來較為簡潔

1. 定義靜態類別

2.實作擴充方法

3.第一個參數是指定方法的型別前面必須加上this

4.使用方法必須using擴充方法的命名空間

 

實作練習: string 加上是否為int 判斷的方法

using System;

namespace CustomExtensions
{
    public static class StringExtension
    {
        public static bool IsIntNumber(this string str)
        {
            int i = 0;
            bool result = int.TryParse(str, out i);
            return result;
        }
    }
}

namespace CustomExtensions_Simple
{
    using CustomExtensions;

    class Program
    {
        static void Main(string[] args)
        {
            string abc = "abc";
            string num = "123";
            string f = "1.23";

            Console.WriteLine("abc is int ? " + (abc.IsIntNumber() ? "Yes" : "No"));
            Console.WriteLine("num is int ? " + (num.IsIntNumber() ? "Yes" : "No"));
            Console.WriteLine("f is int ? " + (f.IsIntNumber() ? "Yes" : "No"));

            Console.Read();
        }
    }
}

結果

No

Yes

No