需要类型转换的原因:因为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);}
}
注:
- 不能转换布尔值。
- 不能把对象类型转换成不相干的类型。
- 在把高容量转换为低容量的时候需要进行强制转换。
- 转换的时候可能会存在内存溢出的问题,或者精度问题。
/*** @author*/
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);}
}