C# 類型轉換
類型轉換從根本上來說是類型鑄造,或者說是把資料從一種型別轉換為另一種型別。在 C# 中,類型鑄造有兩種形式:
隱含型別轉換 - 這些轉換是 C# 預設的以安全方式進行的轉換。例如,從小的整數類型轉換為大的整數類型,從衍生類別轉換為基底類別。
明確的類型轉換 - 這些轉換是透過使用者使用預先定義的函數明確完成。顯式轉換需要強制轉換運算子。
下面的實例顯示了一個明確的類型轉換:
namespace TypeConversionApplication { class ExplicitConversion { static void Main(string[] args) { double d = 5673.74; int i; // 强制转换 double 为 int i = (int)d; Console.WriteLine(i); Console.ReadKey(); } } }
當上面的程式碼被編譯和執行時,它會產生下列結果:
5673
C# 類型轉換方法
C# 提供了下列內建的型別轉換方法:
序號 | #方法& 描述 |
---|---|
1 | ToBoolean 如果可能的話,把型別轉換為布林型。 |
2 | ToByte #把型別轉換為位元組型別。 |
3 | ToChar 如果可能的話,把類型轉換為單一 Unicode 字元類型。 |
4 | ToDateTime #把型別(整數或字串型別)轉換成 日期-時間 結構。 |
5 | ToDecimal #把浮點型或整數型別轉換為十進位型別。 |
6 | ToDouble 把型別轉換成雙精確度浮點型。 |
7 | ToInt16 #把型別轉換成 16 位元整數型別。 |
8 | ToInt32 #把型別轉換成 32 位元整數型別。 |
9 | ToInt64 #把型別轉換為 64 位元整數型別。 |
10 | ToSbyte 把型別轉換成有符號位元組型別。 |
11 | ToSingle #把型別轉換成小浮點數型別。 |
12 | ToString 把型別轉換為字串型別。 |
13 | ToType 把型別轉換成指定型別。 |
14 | ToUInt16 把型別轉換成 16 位元無符號整數型別。 |
15 | ToUInt32 把型別轉換成 32 位元無符號整數型別。 |
16 | ToUInt64 把型別轉換成 64 位元無符號整數型別。 |
下面的實例把不同值的型別轉換為字串型別:
namespace TypeConversionApplication { class StringConversion { static void Main(string[] args) { int i = 75; float f = 53.005f; double d = 2345.7652; bool b = true; Console.WriteLine(i.ToString()); Console.WriteLine(f.ToString()); Console.WriteLine(d.ToString()); Console.WriteLine(b.ToString()); Console.ReadKey(); } } }
當上面的程式碼被編譯和執行時,它會產生下列結果:
75 53.005 2345.7652 True