C#中常用的三种显示转换方法是:
(typename)valuename,是通用方法;
Convert类提供了灵活的类型转换封装;
Parse方法,适用于向数字类型的转换。
【三种方法有什么区别】
例如,(int),Int32.Parse() 和 Convert.toInt32() 。那么三种方法有什么区别呢?
(int)表示使用显式强制转换,是一种类型转换。当我们从 int 类型到 long、float、double 或decimal 类型,可以使用隐式转换,但是当我们从 long 类型到 int 类型转换就需要使用显式强制转换,否则会产生编译错误。也就是说,这个转换方式,编译时会确保是存在显示转换关系的,如果不存在,就会提示无法转换。在对long 类型或是浮点型到int 类型的显式强制转换中使用,但是如果被转换的数值大于 Int32.MaxValue 或小于 Int32.MinValue,那么则会得到一个错误的结果。
Int32.Parse()表示将数字的字符串转换为32 位有符号整数,属于内容转换。只要是字符串,都可以转换过去,至于是否正确,运行过程中会提示是否出错。在符合数字格式的 string 到 int 类型转换过程中使用,并可以对错误的 string 数字格式的抛出相应的异常。
Convert.ToInt32() 则可以将多种类型的值转换为 int 类型,也可以对错误的数值抛出相应的异常,运行过程中会提示是否出错。