public class TypeConversion {
public static void main(String[] args) {
byte b = 127;
char c = 'w';
short s = 123;
int i = 4564564;
long l = 6598444564654654L;
float f = 1.323f;
double d = 2.4124;
// 低类型向高类型转换
System.out.println("累加byte后:" + b); // byte占8位
System.out.println("累加char后:" + (b + c)); // char占16位,ascii码char占8位
System.out.println("累加short后:" + (b + c + s)); // short占16位
System.out.println("累加int后:" + (b + c + s + i)); // int占32位
System.out.println("累加long后:" + (b + c + s + i + l));// long占64位
System.out.println("累加float后:" + (b + c + s + i + l + f));// float占32位
System.out.println("累加double后:" + (b + c + s + i + l + f + d));// double占64位
System.out.println();
// long 强制转换为 int
System.out.println("long:" + l + "转换为int:" + (int) l); // 数据错误
// int 强制转换为 short
System.out.println("int:" + i + "转换为short:" + (short) i); // 数据错误
// double 强制转换为 int
System.out.println("double:" + d + "转换为int:" + (int) d); // 丢失精度
// short 强制转换为 char
System.out.println("short:" + s + "转换为char:" + (char) s);// 字符解码
}
}