• 数据转换
“勿以小杯成大物”
不同类型占用的内存空间不同
byte < int < long
低精度放入高精度永远不会溢出,并且总是成功的
高精度放进低精度必然会有信息丢失
1. 低精度向高精度转换
- 隐形转化(自动转换)
- 显性转化(强制转换)
隐式转换
含义:从低级类型像高及类型转化,系统将自动执行,程序员无需执行任何的操作,也可以叫做自动转换
byte a = 8; // 8
int b = a; // 8
long c = b; // 8
double d = c; // 8.0
char e = 'A'; //A
int f = e; //65
2. 高精度向低精度转换
- 显性转化(强制转换)
显式转换
语法:(类型名)要转换的值
int a = 100; //100
byte b = (byte)a; //100
float f = (float)3.1415926; //3.1415925
导致数据失准
int i = (int)f; //3
导致小数点丢失
byte b = (byte)129; //127
导致数值越界溢出