自动类型转换
(7种,不包含布尔类型)
当容量小的数据类型的变量与容量大的数据类型的变量做运算时,结果自动提升为容量大的数据类型。
说明:
- 容量大小指的是,表示数的范围的大和小。比如:float容量要大于long的容量
- 特别的:当byte、char、short三种类型的变量两两做运算时,结果为int型(自身做运算亦是int型)
强制类型转换:自动类型转换的逆运算
- 需要使用强转符:()
- 注意点:强制类型转换,可能导致精度损失。(截断操作)
boolean类型不可以转换为其它的数据类型。 ```java 例1: int i=128; \float f=125.2 ——>不加f编译不通过:默认为double byte b=(byte)i; —->-128
long l = 1256; //1256默认为int型,若过大超出int型范围则编译不通过 System.out.print(l); ——->未加L不报错原因:int型自动转换为long型
例2: byte b=12; byte b1= b+1 ;\编译不通过:byte+int ```