首页 > 编程语言 > 详细

Java数据类型转换

时间:2020-12-10 09:29:21      阅读:27      评论:0      收藏:0      [点我收藏+]

Java数据类型转换

基本数据类型之间的运算规则:

前提:只说7种基本类型之间的运算,除boolean之外。

1.自动类型提升

结论:当容量小的数据类型的变量与容量大的数据类型的变量做运算时,结果自动提升为容量大的数据类型。

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

特别:当byte、char、short三种类型的变量做运算时,结果为int型

此时的容量大小指的是:表示数的范围的大和小。比如float容量要大于long的容量

  • 易疏忽

    byte b1 = 2;
    int i1 = 129;
    int i = b1 + i1;
    long l = b1 + i1;
    float f = b1 + i1;
    System.out.println(i);	//131		//最小也得用int接收,比他大的更可以
    System.out.println(l);	//131
    System.out.println(f);	//131.0
    
    char c = ‘a‘;
    int i2 = 10;
    int i3 = c + i2;					//最小也得用int接收,比他大的更可以
    System.out.println(i3);				//107
    

2.强制类型装换

概念:自动类型提升运算的逆运算。

  • 需要使用强转符:( )

  • 注意点:强制类型转换,可能导致精度损失。

/**
         * 强制类型转换
         */
        //1.精度损失
        double d = 12.3;
        int i4 = (int)d;            //截断操作,并不是四舍五入
        System.out.println(i4);     //12

        //2.没有精度损失
        long l1 = 123;
        short s = (short)l1;
        System.out.println(s);      //123

//        精度损失,这个涉及到二进制
        int i5 = 128;
        byte b = (byte)i5;
        System.out.println(b);      //-128

Java数据类型转换

原文:https://www.cnblogs.com/byd-hold-on/p/14111779.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!