基本数据类型转换规则
- 前言
- 一、 byte、short、char运算的规则
- 二. 多种数据类型混合运算规则
- 三、总结
前言
在这篇文章中,我对Java的基本类型数据类型的混合运算做了一些总结,希望可以帮到大家
一、 byte、short、char运算的规则
这几个类型的变量在做运算的时候,先各自转换成int类型再进行运算
代码如下(示例):
char c='a';
byte b=1;
short s=c+b;
报错:不兼容的类型,从int转换到short可能会有损失
有+,编译器只能检测到这是一个加法运算,但是结果是多少,编译器不知道
只知道是int类型的
编译器只知道a是int类型,但是不知道a中存储的是哪一个值
二. 多种数据类型混合运算规则
多种数据类型混合运算的时候,最终的结果类型是最大容量对应的类型byte、short、char类型除外,
因为它们会各自转换成int类型再做运算,在Java中计算结果不一定是正确的
三、总结
1.除了布尔类型不能转换,其他都可以转换
2.如果整数型字面量没有超出byte、short、char的取值范围,可以直接赋值给这几个类型的变量
3.容量从小到大的排序:byte<short(char)<int<long<float<double,其中char可以表示大的整数
4.大容量转换为小容量,称为强制类型转换,编写时必须添加强制类型转换符,但是可能出现精度损失,谨慎使用
5. byte、short、char运算,先各自转换成int类型再进行运算
6. 多种数据类型混合运算的时候,各自转换成容量最大的那一种再做运算多种数据类型混合运算的时候,
最终的结果类型是最大容量对应的类型byte、short、char类型除外,
因为它们会各自转换成int类型再做运算,在Java中计算结果不一定是正确的