我们在进行算数运算的时候要求等号两边参与运算的操作数的类型必须一致。如果不一致,满足下列条件会发生:
1、隐式类型转换(自动类型转换)
条件 1:两种类型兼容
例如:int和double兼容(都是数字类型)
条件2:原类型要小于目标类型(小的转大的)
例如:小的转大的 int--double int--float
int a = 10;
double b = a;
Console.WriteLine(b);//隐式类型转换,自动类型转换。
Console.ReadKey();
2、显示类型转换(强制类型转换)
条件1:两种类型兼容
条件2:原类型大于目标类型(大的转小的)
例如:大的转小的 double--int double--float
double a = 3.14;
int b = (int)a;
Console.WriteLine(b);
Console.ReadKey();//显示类型转换,强制类型转换
3、表达式中的类型转换
两个int类型,加减乘除取余后,依然是整数类型。
如果一个操作数为double类型,则整个表达式可提升为double类型
int a = 10;
int b = 3;
double c = a / b;
Console.WriteLine(c);//输出3, 先算的是a/b结果是int类型。把结果赋值给了c
int a = 10;
double b = 3;
double c = a / b;
Console.WriteLine(c);//输出3.33333333333333
网友评论