类型转换

类型转换

Java在运算时需要用到类型转换

运算中,不同的数据类型要转换成同一类型才可继续运算

public class Demo03 {
    public static void main(String[] args) {
        int i = 128;
        byte n = (byte)i;//类型转换,但是此部分的byte的最大值是127,转换时内存溢出了,所以输出了-128
        //强制转换 (转换后的数据类型)+变量名 -----高内存到低内存需要强制转换(高---低)
        int a = 200;
        double b = a;
        //自动转换 (低---高)
        System.out.println(i);
        System.out.println(n);
        System.out.println("=========================");
        System.out.println(a);
        System.out.println(b);
        /*
        注意点:1.不能对布尔值进行一个转换
               2.不能把对象类型转换成不相关的类型
               3.把大容量转换成低容量时使用“强制转换”
               4.强制转换时可能会出现内存溢出问题,或者精度问题
         */
        //JDK7新特性,数字之间使用下划线来分割
        int x = 10_0000_0000;
        System.out.println(x);//输出为1000000000
        int y = 20;
        int z = x*y;//此时若输出z则会导致内存溢出
        System.out.println(z);
        long z2 = x*y;//因为在转换成long类型之前就已经内存溢出所以输出的z2和上面的z是一样的
        System.out.println(z2);
        long z3 = (long)x*y;//先转换成了long类型再进行的计算则是正确的
        System.out.println(z3);
    }
}

posted @ 2026-02-09 19:56  星之奔流  阅读(2)  评论(0)    收藏  举报