类型转换

 

什么是类型转换:每个函数都可以强制将一个表达式转换成某种特定数据类型。自动(隐式)类型转换不会导致数据丢失。

为什么要类型转换:由于Java是强类型语言,所以要进行有些运算的时候,需要用到类型转换。

 

低------------------------->高

byte,short,char,---->int------->long--------->float--------->double


低变高是自动转换

高变低需要强制转换

 

强制转化语法格式示例:

 int a = 52;
 byte b = (byte)a;

 

注意点
1.不能对布尔值进行转换
2.不能把对象类型转换为不相干的类型
3.在把高容量转换到低容量的时候,强制转换
4.转换的时候可能存在内存溢出,或者精度问题
5.操作较大的数时,注意内存溢出问题

例如:

        int money = 10_0000_0000;
        int year = 20;
        long result = money*yearL;
        System.out.println(money*year);

此结果为-1474836480

这是因为在计算之前已经存在问题可以在计算之前解决精度问题

        int money = 10_0000_0000;
        int year = 20;
        long result = money*year;
        System.out.println(money*(long)year);

此结果为200_0000_0000

 

 

 

posted @ 2021-10-29 21:31  灵天逸和江辰希  阅读(159)  评论(0)    收藏  举报