6. Java 的类型转换
-
由于Java是强类型语言,所以要进行有些运算的时候的,需要用到类型转换。
低 -------------------------------------------> 高 byte, short, char -> int -> long-> float -> double
-
运算中,不同类型的数据先转化为同一类型,然后进行运算。
-
强制类型转换
//强制转换 (类型)变量名 高 --> 低 int i = 128; byte b = (byte) i; //内存溢出 System.out.println(i); //128 System.out.println(b); //-128,内存溢出
-
自动类型转换
//自动转换 低 --> 高 int ii = 128; double d = ii; System.out.println(ii); //128 System.out.println(d); //128.0
-
注意点:
- 不能对布尔值进行转换
- 不能把对象类型转换为不相干的类型
- 在把高容量转换到低容量的时候,强制转换
- 转换的时候可能存在内存溢出,或者精度问题