- 由于Java是强类型语言,所以要进行有些运算的时候,需要用到类型转换
- byte,short,char-->int-->long-->float-->double
- 运算中,不通类型的数据先转化为同一类型,然后进行运算
public class demo02 {
public static void main(String[] args) {
int i = 128;
byte b = (byte) i;
System.out.println(b);//内存溢出
//加上()代表强制转化 (类型)变量名
//自动转化,由低到高自动转化
double c = i;
System.out.println(c);
}
}
注意点
- 不能对布尔值进行转化
- 不能吧对象类型转化为不相干的类型
- 再把高容量转换到低容量的时候,强制转化
- 转换的时候可能存在内存溢出,或者精度问题
public class demo02 {
public static void main(String[] args) {
//JDK7的新特性,数字之间可以用下划线分割
int money = 10_0000_0000;
int years = 20;
int total = money*years;
System.out.println(total);//输出会溢出,需要先转化
long total1 = money* ((long)years);
System.out.println(total1);//先把一个数转为long
}
}