类型转换可将一种类型的数据转换为另一种类型。它也被称为类型铸造。在 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(); } } }123456789101112131415161718复制代码类型:[csharp]
当编译和执行上述代码时,会产生以下结果:
99991复制代码类型:[csharp]
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(); } } }12345678910111213141516171819202122复制代码类型:[csharp]
当编译和执行上述代码时,会产生以下结果:
7553.0052345.7652True
联系客服