Java学习

Java中的类型提升

2018-05-19  本文已影响1人  FFJ

程序中在计算表达式时,会自动进行类型提升。如,

byte b = 1;
short s = 2;
int i;
long l = 1;
//b = b * 2;        //类型不匹配,不能将int转换为byte
//s = s * 2;        //类型不匹配,不能将int转换为short
l = l * 2;
//i = l * 2;        //类型不匹配,不能将long转换为int
        
float f = 1.0f;
double d;
//f = f * 2.0;      //类型不匹配,不能将double转换为float

由上面程序可以看出,byte和short同整数字面量做运算,表达式被提升成了int类型。long类型同整型字面量做运算,表达式被提升成了long类型。float类型同双精度的浮点型字面量做运算,表达式被提升成了double类型。

上一篇下一篇

猜你喜欢

热点阅读