购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

3-12 数据类型的转换

目前我们已经学习了整数类型数据,如sbyte、byte、ulong等(可以参考3-4-1节);浮点数类型数据,如float、double和decimal(可以参考3-5-1节);以及字符数据char,可以参考3-7节。这些数据可以互相转换,这就是所谓的数据类型的转换。所以数据类型的转换概念是将一种数据类型转换成另一种数据类型,有隐式转换(implicit conversion)和显式转换(explicit conversion)等两种转换方式。

3-12-1 隐式转换

所谓的隐式转换是指不需要声明就可以进行转换,这种转换编译程序不需要进行检查。转换的特色是可以从比较小的容量数据类型,转移到比较大的容量数据类型,在转换过程数据不会遗失。隐式转换表如表3-8所示。

表3-8 隐式数据类型转换表

方案ch3_22.sln: 将byte、short和char转换成int整数。

执行结果

从上述第8~9行可以看到字符‘A’将转成65,这类似于将字符转成Unicode码值。

3-12-2 显式转换

显式转换又称强制转换,这种转换需要转换运算符(casting operator),也就是在程序代码中使用下列语法转换:

     变量 = (新数据类型) 变量或表达式  // 新数据类型就是casting operator

这类转换是强制转换,转换的特色是可以从比较大的容量数据类型,转移到比较小的容量数据类型,在转换过程有时会造成数据遗失,表3-9所示为可以显式转换的数据类型表。

表3-9 显示数据类型转换表

方案ch3_23.sln: 使用显式转换将float和double转换成int。

执行结果

从浮点数double或是双倍精度浮点数double转换成整数int的显式转换中,读者可以看到小数点部分被舍去了。

6-5-3节笔者会介绍使用Convert类相关的数值转换函数。 x+U/GfkCtctJW5gWtcnoeEdo6pQXXbem0j5OU0yvCGQa56aMYxXy9wjBDGQ/zLXt

点击中间区域
呼出菜单
上一章
目录
下一章
×