经过前面的学习C#中基本的数据类型就介绍的差不多了,下面就学习下类型之间的互相转换.C# 中类型转换可以分为2类: 隐式转换 和 显式转换.
隐式转换:
隐式转换是系统默认的转换,不需要申明就可以进行转换。在隐式转换过程中,编译器无需对转换进行检查就能够安全的执行转换,比如从int类型转到long类型,就是隐式转换。隐式转换一般不会失败,转换过程中也不会丢失信息.
比如:int i = 100;
long a = i; //无需声明自动的将int 型转换为long型
隐式转换并非对任意两种类型都成立,比如,我们将上面的long类型隐式转换为int类型就不会成功:
long a = 100;
int i = a; //编译器会报错
因此隐式转换有以下的规则:
- 隐式数值转换
- 隐式枚举转换
- 隐式引用转换
隐式数值转换:
隐式数值转换包括以下几种:
- 从sbyte 类型到short、int、long、float、double、decimal类型;
- 从byte 类型到short、ushort、int、uint、long、ulong、float、double、decimal类型;
- 从short 类型到 int、long、flaot、double、decimal类型;
- 从ushort 类型到 int、uint、long、ulong、flaot、double、decimal类型;
- 从int 类型到