顯式轉換與隱式轉換
類型之間的轉換可以分為隱式轉換與顯式轉換,如int類型可直接轉換為long類型。
/*隱式轉換*/ int intNum = 23; long longNum1 = intNum;
也可進行顯式轉換;
/*顯式轉換*/ int intNum = 23; long longNum2 = (long)intNum;
Parse
每個實值型別都包含Parse()依法,它將字串轉換成對應的數實值型別]
/*Parse轉換*/ string text = "3.1415926E1"; float PI = float.Parse(text);
Convert
System.Convert屬於.net framework中的類,為不可繼承類,它在msdn中定義原型為
public sealed class ConvertSystem.Convert只支援預定義數量的類型,它支援的類型包括所有實值型別加String類型的基礎資料型別 (Elementary Data Type)和Object類型,這裡的基礎資料型別 (Elementary Data Type)為.net framework的資料類型。
/*Convert轉換*/ bool isTrue=false; string strNum = Convert.ToString(isTrue);
TryParse()
TryParse屬於C#靜態方法,所有基礎資料型別 (Elementary Data Type)均包含此方法。它返回bool類型,表示是否轉換成功,它常搭配out來進行轉換資料;若轉換失敗,它將返回false,不會引發異常。
/*TryParse轉換*/ System.Console.Write("輸入要轉換的數值:"); string input = System.Console.ReadLine();//輸入 int result;//轉換結果 if (int.TryParse(input, out result)) { System.Console.WriteLine("轉換結果為:{0}", result); } else { System.Console.WriteLine("轉換失敗"); }
ToString()
所有的類型都支援ToString()方法,對於只有類型顯式實現了ToString()的情況下才會返回該類型對象取值的字串表示;其他類型ToString()只是返回資料類型的名稱。
Object o = new object(); Console.WriteLine(o.ToString()); int age = 23; Console.WriteLine(age.ToString()); bool isMale = true; Console.WriteLine(isMale.ToString());
以上就是C#痛點逐個擊破(9):類型轉換的內容,更多相關內容請關注topic.alibabacloud.com(www.php.cn)!