现在的位置: 首页 > 综合 > 正文

关于类型提升

2013年03月26日 ⁄ 综合 ⁄ 共 355字 ⁄ 字号 评论关闭

在java中属于数值类型的有byte、short、char、int、float、long.而这里面有三个比较特别的类型byte、short、char这三个。

    为什么说这三个特别呢,现举一个例子:

        short a=0, b=1, c=2;

        a = b+c;    //这个会报错

        a += b;     //这个不报错

    其它两种类型也同样如此,为什么会这样呢?经过测试,byte、short、char这三种类型,只要是在表达式中,它就会先将自己提升为int型,如果表达中有更高的类型(如long型),那么才会再提升到更高的类型,再进行计算。注意的是"+="这个符号会自动进行类型隐式转换,可以从大类型转向小类型。除了这个符号,还有"-=","*=","/=",这三个符号。

抱歉!评论已关闭.