首页 > 代码库 > JAVA 类型转换:隐式转换与强制转换

JAVA 类型转换:隐式转换与强制转换

    这篇随笔是对java类型转换的回顾,方便忘记的时候查询,同时希望帮助有这方面需要的朋友

  一、 数据类型分类:

                简单数据类型:整型、实型、字符型((byte-short-char)-int-long-float-double)

 

 

  二、简单类型转换

        (1)低级向高级转换---自动转换:隐式转换

            

        byte i = 0;
        int a =i;
        long b = i;
        float c =b;
        double d =c;
        short j =i;

 

        (2)高级到低级转换---强制转换

           

        int i=99;
        byte b=(byte)i;
        char c=(char)i;
        float f=i;
        double d = f;
        f =(float) d;

        (3)包装类过度类型转换

            JAVA 共有6个包装类:Boolean、Integer、Long、Float、Double、Character 

 三、转换例子

     

shorts = 1;

s= s +1;     

      与

     

shorts = 1;

s+=1;

     分析是否有问题?

 

   分析:第一个会报错,因为s = s+1会隐式转换为int类型,当把一个int类型赋值给short类型时,可能损失。

     第二个正确,因为S+=1;中具有强制转换,s = (short)(s+1),那么不会报错。


 

    

   

JAVA 类型转换:隐式转换与强制转换