变量的类型转换
自动类型转换(隐式类型转换)–就是说两种数据类型在转换的过程中不需要显式地进行声明
强制类型转换(显式类型转换)两种类型彼此不兼容 或者目标类型取值范围小于源类型(可能造成数据丢失,数据精度丢失)
byte a;
int b=129;
a=(byte) b;
System.out.println("a="+a);
System.out.println("b="+b);
//结果:
a=-127
b=129
byte a;
int b=257;
a=(byte) b;
System.out.println("a="+a);
System.out.println("b="+b);
//结果:
a=1
b=257
//原理是int内存中占4个字节 byte 占1个字节 强转后前面3个高位字节数据丢失
0000000 00000000 00000000 00000000 -》int
00000000 -》byte
表达式类型自动提升
例如:byte,short,char类型的变量在运算期间类型会自动提升为int ,然后进行运算