Java中的类型提升

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

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类型。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容