数据类型转换

类型转换

需要将不同类型数据转换为同一类型,才能进行运算

数据类型等级从低到高依次为:

字符----整数----小数

强制类型转化

数据类型从高到低需要强制转换,因为高数据类型占用字节多,包括的数字也会更多,因此从高向低转换会出现低数据类型无法正确表示数字的情况。(内存溢出)

强制转换:(类型)变量名

public class demo1 {
    public static void main(String[] args) {
        int i = 128;
        byte b = (byte)i; //强制转换int为byte类型,应注意类型大小,避免内存溢出此处即会出现溢出情况。
                          //byte最大为127
        System.out.println(i);
        System.out.println(b);
    }
}

i输出值为128,而b输出值为-128

自动类型转换

数据类型从低到高自动转换,不需要强制转换。

注意

  1. 布尔值不能进行转换
  2. 不能把对象类型转换为不相干的类型
  3. 高向低转换时需要强制转换,反之自动转换
  4. 转换时可能出现内存溢出或精度问题,例如小数转为整数时
posted @ 2020-11-03 18:20  SshadowHeart  阅读(76)  评论(0)    收藏  举报