型別轉換可將一種型別的資料轉換為另一種型別。它也被稱為型別鑄造。在 C# 中,型別轉換有兩種形式:
以下範例顯示了顯式型別轉換用法:
using System;
namespace TypeConversionApplication
{
class ExplicitConversion
{
static void Main(string[] args)
{
double d = 9999.98;
int i;
// cast double to int.
i = (int)d;
Console.WriteLine(i);
Console.ReadKey();
}
}
}
當編譯和執行上述程式碼時,會產生以下結果:
9999
C# 提供以下內建型別轉換方法:
序號 | 方法 | 描述 |
---|---|---|
1 | ToBoolean() |
如果可能,將型別轉換為布林值。 |
2 | ToByte() |
將型別轉換為位元組型別值。 |
3 | ToChar() |
如果可能,將型別轉換為單個Unicode字元。 |
4 | ToDateTime() |
將型別(整數或字串型別)轉換為日期時間結構。 |
5 | ToDecimal() |
將浮點或整數型別轉換為十進位制型別。 |
6 | ToDouble() |
將型別轉換為Double 型別。 |
7 | ToInt16() |
將型別轉換為16 位整數。 |
8 | ToInt32() |
將型別轉換為32 位整數。 |
9 | ToInt64() |
將型別轉換為64 位整數。 |
10 | ToSbyte() |
將型別轉換為有符號位元組型別。 |
11 | ToSingle() |
將型別轉換為小浮點數。 |
12 | ToString() |
將型別轉換為字串。 |
13 | ToType() |
將型別轉換為指定的型別。 |
14 | ToUInt16() |
將型別轉換為unsigned int 型別。 |
15 | ToUInt32() |
將型別轉換為unsigned double 型別。 |
16 | ToUInt64() |
將型別轉換為無符號大整數。 |
以下範例將各種值型別轉換為字串型別:
using System;
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