类型转换

强制转换类型(高到低)         /      自动转换类型(低到高)

*不同类型的转换先转换为同类型在进行运算

按优先级由低到高划分为:byte  short char------int-----long-----float------double

public class java1 {
    public static void main(String[] args) {
       int a=128;                           
       byte b =(byte) a;
        System.out.println(b);          //高转低  =-128
    }
}

 

  注意点:1.不能对布尔值进行转换

      2.不能对象类型转换为不相干的类型

     3.高到低转换为强制转换

      4.转换过程中可能存在内容溢出/精度问题

 

 

public class java1 {
    public static void main(String[] args) {
        System.out.println((int) 23.6);    //低转高 =23
        System.out.println((int)222.222F);  //低转高=222
    }
}
public class java1 {              //字符与数字的转换
    public static void main(String[] args) {
       char b = 'a';                        //a=97  字符的本质是数字
        int c = b+1;
        System.out.println(c);
        System.out.println((char)c);            //b=98

    }
}

 

public class java1 {              //对象类型的运算
    public static void main(String[] args) {
    int num1=10_0000_0000;              //数字之间可以用下划线分割
    int num2=20;
        long num4=num1*num2;            //计算已经溢出
    long num4=num1*((long)num2);        //计算正确=20000000000
        System.out.println(num4);
    }
}

 

posted @ 2021-08-09 21:42  归故归谷糕  阅读(46)  评论(0)    收藏  举报