自动类型转换
1 什么是自动数据类型?为什么要进行自动类型转换?
哒;类型范围小的变量,可以直接赋值数据类型较大的变量。
byte a=12;
int b=a;// 发生了自动类型的转换
System.out.println(a);
System.out.println(b);
这个过程中a由byte转化为int
表达式的自动转换
1 表达式的最终类型由表达式中的最高类型决定。
案例 byte a1=10;
int a2=20;
long a3=30;
long rs=a1+a2+a3;
System.out.println(rs);
2 直接写的小数类型会默认定义为double类型
案例
double rs2=a1+a2+1.0;
System.out.println(rs2);
3 在表达式中,byte,short,char是直接转换成int类型运算的。
byte y1=10;
short y2=20;
int rs3=y1+y2;
System.out.println(rs3);
4 强制类型转换(类型范围大的数据或变量,转化为类型范围小的变量)(结果要自己负责可能会出现数据增减或丢失)
int A=20;
//byte B=A; 报错
byte B=(byte)A; (数据类型 变量2=(数据类型)变量1 数据)
System.out.println(B);
附:ALT+ENTER 强制类型的转换快捷键