C# 类型转换
类型转换可以分为隐式类型转换和强制类型转换。
值类型中将小范围的转化为大范围的是隐式转换,例如:byte转int,因为byte占用1b空间,int占用4b空间。
值类型中将大范围转换为小类型的是强制转换,例如:int转byte,编译器会提示编译错误,需要加上括号或者调用Convert类的方法。
如果使用括号,有可能会出现错误的结果,这将让错误的结果在程序中运行。而如果使用Convert类的方法,后台会抛出异常,推荐使用。
引用类型中将子类型转换为父类型的是隐式转换,将父类型转换为子类型是强制转换。
值类型和引用类型之间的转换称为装箱和拆箱。
装箱操作指的是值类型转成引用类型:object obj = 10;
拆箱操作指的是引用类型转成值类型:int num = (int)obj;