本文转载自微信公众号《后端Q》,作者柯南。转载请联系后台Q公众号。类型转换基本上就是类型转换,或者将数据从一种类型转换为另一种类型。在C#中,类型转换有两种形式:隐式类型转换-这些转换是C#中的默认转换,以安全的方式执行,不会丢失数据。例如,从小整数类型转换为大整数类型,从派生类转换为基类。显式类型转换-显式类型转换,即强制转换。显式转换需要转换运算符,转换会导致数据丢失。以下示例显示了显式类型转换:staticvoidMain(string[]args){doubled=5673.74;inti;//castdoubletointi=(int)d;Console.WriteLine(i);Console.ReadKey();}当以上代码编译执行,会产生如下结果:5673下面的例子将不同值的类型转换成字符串类型:staticvoidMain(string[]args){inti=75;floatf=53.005f;doubled=2345.7652;boolb=true;Console.WriteLine(i.ToString());Console.WriteLine(f.ToString());Console.WriteLine(d.ToString());Console.WriteLine(b.ToString());Console.ReadKey();}当上面的代码被编译执行时,会产生如下结果:7553.0052345.7652True在C#中,我们可以看到三种类型的强制转换,比如强制转换成有符号的32位整数类型,你可以找到以下三个方法:①(int)()②Convert.ToInt32()③int.Parse()as转换运算符as运算符的工作原理与强制转换相同,只是它从不抛出异常,如果对象无法转换ed,结果为null,cast会抛出异常。
