类型转换正在将一种类型的数据转换为另一种类型.它也被称为类型铸造.在C#中,类型转换有两种形式 :
隐式类型转换 : 这些转换由C#以类型安全的方式执行.例如,是从较小到较大的整数类型的转换以及从派生类到基类的转换.
显式类型转换 : 这些转换由用户使用预定义的函数显式完成.显式转换需要强制转换运算符.
以下示例显示了显式类型转换 :
using System;namespace TypeConversionApplication { class ExplicitConversion { static void Main(string[] args) { double d = 5673.74; int i; // cast double to int. i = (int)d; Console.WriteLine(i); Console.ReadKey(); } }}
编译并执行上述代码时,会产生以下结果 :
5673
C#类型转换方法
C#提供以下内置类型转换方法 :
Sr.No. | 方法&说明 |
---|---|
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 转换a键入一个小的浮点数. |
12 | ToString 将类型转换为字符串. |
13 | ToType 将类型转换为指定类型. |
14 | ToUInt16 将类型转换为unsigned int类型. |
15 | ToUInt32 将类型转换为无符号长整型. |
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(); } }}
编译并执行上述代码时,会产生以下代码结果&减去;
7553.0052345.7652True