C# as 與 is

C#知識系列

is轉換規則:
1.它會檢查物件的類型兼容性,返回結果(true)false
2.不會拋出異常
3.如果物件為null,則為false

            object o = "aa";
            if (o is string)
            {
                string s = (string) o;
                Console.WriteLine("Y");
            }
            else
            {
                Console.WriteLine("N");
            }

as轉換規則:
1.檢查物件兼容性,返回轉換結果,如果不兼容返回NULL
2.不會拋出異常
3.如果結果判斷空,則強制執行類型轉換拋出NullReferenceException異常

            string b = o as string;
            if (b !=null)
            {
                Console.WriteLine("Y");
            }
            else
            {

                Console.WriteLine("N");
            } 


 

老E隨手寫