1)变量类型转换是什么?
简单地理解,变量类型转换就是将一个类型的变量转换成另一个类型的变量。
2)为什么使用类型转换?
在写代码过程中有时候必须用到类型转换。比如将一个字符串值"123"转换成int类型123,在特定条件下这是必要的,为了满足一些需求时。
3)如何使用类型转换?
类型转换常用的就是显式转换与隐式转换。显式转换要求变量的值在赋值给另一个类型变量时,必须强制用某些函数来转换。隐式转换则是将变量的值赋值给另一个类型变量时,在内部就自动转换成了另一个类型的变量。
4)隐式转换
隐式转换的代码如下所示,变量num1的值12本来是int类型,为何在第二句却可以直接复制给num2使用呢?通常来讲变量类型决定保存的值也必须是这个类型,但这里12赋值给num2却成功,实际上这就是隐式转换。首先int和double兼容(都是数字类型),其次目标类型(double)大于原类型(int),因此可以隐式转换为大的类型:
5)显式转换
double无法隐式转换为int,这样会报错:
如上图所示,红线提示为“无法将类型double隐式转换为int”,因此这时候需要使用显式转换,可以使用Convert.ToInt32()将double类型转换为int类型。代码如下:
运行会发现屏幕输出的是12,实际上可以证明:①成功将double类型的12.5转换成了int类型 ②因为int类型只能保存整数,因此12.5在转换时只截取了整数部分保存。
6)补充
变量类型转换有Convert和Parse两种方式,比如:
Convert:
将字符串转成数值int类型,int num=Convert.ToInt32("123");
将字符串转成数值double类型,double num=double.Parse("12.5");
Parse:
将字符串转成数值int类型,int num=int.Parse("123");
将字符串转成数值double类型,double num=double.Parse("12.5");