0
点赞
收藏
分享

微信扫一扫

不同数据类型的转换day05

慕犹清 2022-02-09 阅读 58

数据类型 续集

public class demo01{
    public static void main(String[] args){
        char a ='a'   //
        System.out.println((int)a) //强制转换类型
    }
}

类型的层级

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

  1. byte
  2. short
  3. char(虽然是字符,但也是可以当数字来进行运算的)
  4. int
  5. long
  6. float(小数优先级大于整数)
  7. double

不同类型的数据先转为同一类型才可以进行运算。

转换的类型

强制转换:高级向低级转换,就是自动转换

自动类型转换:低级向高级转换,就是强制转换

注意点:布尔类型不可以转换

转换方法

public class demo01{
    public static void main(String[] args){
        //方式1
        int a1 = 10;
        double a2 =3.14;
        System.out.println((double)a1);//输出10.0
        System.out.println((int)a2);//强制转换 输出3
        //方式2
        a1 =(double)a1  //自动转换
        a2 =(int)a2  		//强制转换
        System.out.println(a1);//得出 10.0
        System.out.println(a2);//通过四舍五入 得出3
    }
}

注意事项

public class demo01{
    public static void main(String[] args){
        //注意,强制转换的时候注意不要内存溢出
        int a1 = 128;
        float a2 =3.14;
        int a1 =(byte)a1   //强制转换为byte,但byte最大只是127.内存溢出会数据出错虽然输出-128
        float a2 =(int)a2  //浮点数自动转换为整数
        System.out.println(a1);//内存溢出,得出 -128
        System.out.println(a2);//去小数点后数 得出3
        
        //布尔类型不能转换
        //不能把对象类型转换为不相干的类型
        System.out.println((int)121);//低容量转高容量,自动转换,输出为121.0
        System.out.println((int)121.1);//高容量转到低容量的时候,强制转换,输出121.(出现精度问题)
        System.out.println((char)98);//98是数字int类型,要变成比他低级字符,需要括号强转
        
        
    }
}

注意点:

  1. 不能对布尔类型进行转换。
  2. 不能把对象类型转换为不相干的类型
  3. 高容量转到低容量的时候,强制转换
  4. 转换的时候可能内存溢出,或者精度问题

额外点

jdk7新特性,操作比较大的数据时可以用下划线分割

public class demo01{
    public static void main(String[] args){
        int monney =10_0000_0000 //表示1000000000,特性可以加_
        int year =20
        long all = monney*((long)year) //如果内存溢出,必须在运算前把问题解决了
        /*
        一般运算的时候,会把数值自动转换为高容量的类型,所以做乘法,低容量会自动转换为高容量的类型进行运算。
        必须在运算的时候,把结果的类型问题解决了
        long 后缀L跟l都可以用的,建议用L代替,免得看成了1
        */
    }
}
举报

相关推荐

Day05 数据类型(上)

day05

Day05

Vue day05

Java Day05

day05数组

Day05 - TypeScript

数据库笔记——day05

0 条评论