類型轉換可將一種類型的數據轉換為另一種類型。它也被稱為類型鑄造。在 C# 中,類型轉換有兩種形式:
- 隱式類型轉換 - 這種類型的轉換由 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# 類型轉換方法
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