数据类型的转换分为两大类:自动类型转换,强制类型转换。
自动类型转换的条件:
1、两种类型必须是值类型(整型和浮点类型)
2、目标类型的精度必须大于要转换的类型,例如double大于int。个人理解就是两种类型的精度的的大小,double的精度要比int的精度高,所以int往double转换时不会失去精度,反而会增加精度,所以可以自动类型转换。int就像一个小箱子,double像是一个大箱子,小箱子可以放进大箱子里。反而,当double向int转换时,就会失去一定的精度,计算机不能做到自动类型转换。就像大箱子无法很好的向小箱子里放,我们必须主动切掉一部分。
强制类型转换共有三种方法,分别是int,parse,Convert。下面详细介绍区分。
Int/float/…:用于值类型之间的强制转换。
这种的类型转换比较常用,只需要在需要转换的数据前加上想要转换成的类型,并在该类型上加上一对小括号。唱用在值类型之间的转换。
2、parse和ToString:字符串转换成值类型时使用“类型.Parse("字符串");”,当值类型转换成字符串类型时使用“数值.ToString();”,用在值类型和引用类型之间的转换。
3、万能转换器:Convert.ToInt32():可以转换很多的类型。没有限制,但是最好能做到根据不同的情况采取最合适的方法。
强制类型转换表