两大类
自动类型转换(自动的):由低精度向高精度转换
数据类型从低到高的排序:
byte、 short.、char、int、 long、 float、 double
强制类型转换(手动的):
●自动类型转换的逆过程,将容量大的数据类型转换为容量小的数据
类型。使用时要加上强制转换符(),但可能造成精度降低或流出
格外要注意。
●通常,字符串不能直接转换为基本类型,但通过基本类型对应的包
装类则可以实现把字符串转换成基本类型。
➢如: Stringa= “43"; int i= Integer,parselnt(a);
➢boolean类型不可以转换为其它的数据类型。
NOTICE:
数字类型的运算规则:
1、有多种类型的数据混合运算时,系统首先自动将所有数据转换成容量最大的那种数据类型,然后再进行计算。数字类型的从低到高分别是byte、 short.、char、int、 long、 float、 double.
2、数字类型的运算中,多个相同类型变量参与的运算,变量要先转换为相对应的数据类型的默认类型(比如两个byte类型的变量相加,公先把两个byte类型的变量转换成默认的int类型之后再计算,得到的结果是int类型)。这种情况适用于变量的数据类型的容量比默认类型的容量小, (比如byte. short. 都比int小)
3、byte, short, char之间不会相互转换,他们三者在计算时首先转换为int类型。
package bilibili;
/**
*
* @ClassName: Main
* @Description:数据类型转换
* @author emowater
* @date 2020年6月4日
*
*/
public class Main {
public static void main(String[] args) {
/**
* 自动类型转换
*/
byte b = 9;
int i = b ;
System.out.println(i);//输出结果为9
/**
* 强制类型转换(手动的)
* 注意括号为英文
*/
int k = 7;
byte b1 = (byte) k;
System.out.println(b1);//输出结果为7
}
}