类型转换 & 运算规则

数据类型装换
1.小转大(隐式转换) 直接转换
byte a = 10;
int b = a;
2.大转小(显式转换)强转换
float c = 3.1415F;
int f = (int) c;
double q = 9.8;
long w = (long)q;
System.out.println(w);//小数全舍弃,一般不会这样转,这只是讲解
运算符和规则
运算符

运算规则(5条)
1.计算结果的数据类型,与最大类型一致
System.out.println(5 / 2); //输出2 int类型
System.out.println(5.0 / 2);//输出2.5 double类型
System.out.println(5 / 2d);//输出2.5 double类型
2.byte,short,char三种比int小的整数,运算时会先自动转换成int
short a = 1;
short b = 2;
short c = (short) (a + b);//这里需要强转换。因为a+b运算结果后为int类型
3.整数运算溢出
System.out.println(300000000 * 60 * 60 * 24 * 365);//输出结果不正确
System.out.println(300000000L * 60 * 60 * 24 * 365);//输出结果正确
4浮点数运算不精确
System.out.println(1-0.9);//java特性
5.浮点数的特殊值
Infinity 无穷大 3.14/0 NaN 0/0.0
System.out.println(3.14/0);
System.out.println(0/0.0);
自加和自减
自加
int a =1;
System.out.println(a++);
//先运算,后执行 ----输出结果为 1
int b = 1;
System.out.println(++b);
//先执行,后运算 ----输出结果为 2
自减与自加类似 ++ 换 --
浙公网安备 33010602011771号