2、强制类型转换

public class Demo01 {
    public static void main(String[] args) {
        //低-------->高
        //byte ,short,char --> int -->long -->float -->double
        //强制类型转换语法:    从高---->低
        // 类型1 变量1  = 数值
        // 类型2  变量2 = (类型1)变量1
        int i =128;
        byte b =(byte) i ;
        System.out.println(i);   //128
        System.out.println(b);   //-128
        //经过强制类型转换  b != i  的原因:内存溢出

        //==========================================================
        //自动类型转换  从低---->高
        int m = 128;
        double n = i;
        System.out.println(m);      //128
        System.out.println(n);      //128.0

        /**
         * 注意点:
         * 1.不能对boolean进行转换
         * 2.不能把对象类型转换为不相干类型:例如将数字转换为字符串
         * 3.在把高容量转换成低容量的时候,强制转换
         * 4.转换的时候可能存在内存溢出,或者精度问题
         */
        System.out.println("===============================");
        System.out.println((int)23.7);    //23  精度问题
        System.out.println((int)-45.89f);  //-45  精度问题
        System.out.println("===============================");

        char c = 'a';
        int d = c+1;
        System.out.println(d);    //98
        System.out.println((char)d);  //b

    }

}

版权声明:本文为TC0221原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。