类型转换从根本上说是类型铸造,或者说是把数据从一种类型转换为另一种类型,在c#中,类型铸造有两种形式
隐式类型转换
这些转换是c#默认的安全方式进行的转换,例如,从小的整数类型转换为大的整数类型,从派生类转换为基类
显示类型转换
这些转换是通过用户使用预定义的函数显示完成的,显示转换需要强转换运算符
namespace TypeConversionApplication
{
class ExplicitConversion
{
static void Main (string[] args)
{
double d=567.22;
int i;
//强制转换double为int
i=(int)d;
Console.WriteLine(i);
Console.ReadKey();
}
}
}
产生结果567
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