一、自动类型转换
1.容量小的类型可以自动转换成容量大的。
byte可自动转换为short、int、long、float、double;
short可自动转换为int、long、float、double;
int可自动转换为long、float(可能会损失精度)、double;
long可自动转换为float(可能会损失精度)、double(可能会损失精度);
float可自动转换为double;
char可自动转换为int、long、float、double;
2.整型常量、字符型常量、短整型常量(其中包括它们的字面常量和符号常量)可以直接赋值给byte、short、char只要不超出其范围即可。
二、强制类型转换
语法格式:(type)var
注意出现的问题:超出范围会溢出
int a = 1000000000;
int b = 20;
System.out.println(a*b);// 溢出
System.out.println((long)(a*b));// 溢出
System.out.println((long)a*b);// 不溢出