需要类型转换的原因:因为Java是强类型的语言,所以有时可能要进行跨类型的运算,这就需要先进行类型转换,再进行运算。
类型转换分为:
- 强制类型转换(由高-->低时使用),
- 自动类型转换/ 隐式类型转换(由低-->高时使用),
public class TypeConversion {
public static void main(String[] args) {
int t = 100;
double t1 = t; //自动类型转换
byte t2 = (byte) t; //强制类型转换
System.out.println(t);
System.out.println(t1);
System.out.println(t2);
}
}
注:
- 不能转换布尔值。
- 不能把对象类型转换成不相干的类型。
- 在把高容量转换为低容量的时候需要进行强制转换。
- 转换的时候可能会存在内存溢出的问题,或者精度问题。
public class TypeConversion {
public static void main(String[] args) {
//这种写法为Java7的特性
int a = 10_0000_0000;
int b = 20;
int c = a * b;
System.out.println(c);
//解决
long d = a * ((long) b);
System.out.println(d);
}
}



