C#可以提供兼容类型的转换,转换始终会根据一个存在的值创建另一个新的值,转换分为两种,显式转换 隐式转换
隐式转换:自动发生
显示转换:需要添加强制转换
在一下案列中 我们把Int 32隐式转换为Double 又将Double 显示转换为short
int num1 = 123; double num2 = num1; Console.WriteLine(num1.GetType()); short num3 = (short)num2; Console.WriteLine(num3.GetType());
隐式转换只有在一下两点才能完成:
1.编译器能够确保转换成功
2.转换不会造成数据丢失
显示转换在满足以下两点才能使用
1.编译器不能保证转换是否成功
2.信息在转换后不能保证是否会被丢失