- 由于java是强类型语言,运算时需要用到类型转换
低等级--------------------------->高等级
byte,short,char->int->long->float->double - 运算中,不同类型的数据要转化为同一类型再进行运算
int i=128;
byte b=(byte)i;//内存溢出byte128
double d=i;
//强制转换 (类型)变量名 高->低
//自动转换 低->高
System.out.println(i);//128
System.out.println(b);//-128
System.out.println(d);//128.0
注意点:
- 不能对布尔值进行转换
- 不能把对象类型转换为不相干的类型
- 再把高容量转换到低容量的时候,强制转换,反之自动转换
- 转换的时候可能内存溢出,或者精度问题
JDK7新特性数字中可以加下划线
int num=1_0000_0000;
System.out.println(num);//100000000