明確轉換與隱式轉換
型之間的轉換可分為隱式轉換與明確轉換,如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. framework中的類,為不可繼承類,它在msdn中定義原型為
public sealed class ConvertSystem.Convert只支援預先定義數量的類型,它支援的類型包括所有值類型加String類型的基本資料類型和Object類型,這裡的基本資料類型為.net framework的資料型態。
/*Convert转换*/ bool isTrue=false; string strNum = Convert.ToString(isTrue);
TryParse屬於C#靜態方法,所有基本資料型別均包含此方法。它傳回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()只是傳回資料類型的名稱。
Object o = new object(); Console.WriteLine(o.ToString()); int age = 23; Console.WriteLine(age.ToString()); bool isMale = true; Console.WriteLine(isMale.ToString());