类型转换
不同类型之间进行赋值操作或者运算的时候涉及到了类型转换
编译器自动完成的转换,称只为自动类型转换
从范围小的向范围大的转换的时候,会自动类型转换
byte-->short-->int -->long-->float-->double
char-->int
从左向右赋值可以自动完成
byte -->char 不能自动类型转换
short -->char 不能自动类型转换
从范围大的赋值给范围小的,需强制类型转换
注意:强制类型转换必须程序员手动去转
Demo:
public class Demo3{
public static void main(String[]args){
byte b3 = 100;
int i3 = b3;
long lo = 100; //默认是int
float f1 = lo;
char c1 = b3;
int i=20;
byte b1 = (byte)i;
System.out.println(b1);
int i1 = 128; //0000... 1000 0000 32位
byte b2 = (byte)i1; //强制类型转换 1000 0000 8位
System.out.println(b2);
byte b4=127; //直接一个整数,默认是int
long lon=55555555555L; //末尾加上L来表示long型的整数
}
}