概述
1.自动类型提升
概念:当容量小的数据类型的变量与容量大的数据类型的变量做运算时,结果自动提升为容量大的数据类型。
容量从小到大如下:
byte、char、short --> int --> long --> float --> double
tip:特别的,当byte、char、short三种类型的变量做运算时,结果为int型。
byte b1 = 2;
int i1 129;
//编译不通过
//byte b2 = b1 +i1;
//编译通过
int i2 = b1 + i1;
long l1 = b1 + i1;
2.强制类型转换
概念:自动类型提升运算的逆运算
①需要使用强制类型转换符号()。
②注意点:强制类型转换,可能导致精度损失。
举例:
class VariableTest3{
public static void main(String[] args){
double d1 = 12.9;
//精度损失举例1
int i1 = (int)d1;//截断操作
System.out.println(i1);
//没有精度损失
long l1 = 123;
short s2 = (short)l1;
//精度损失举例2
int i2 = 128;
byte b = (byte)i2;
system.out.println(b);//-128
}
}
最后
以上就是受伤外套为你收集整理的【Java基础】(1.1)自动类型提升与强制类型转换1.自动类型提升2.强制类型转换的全部内容,希望文章能够帮你解决【Java基础】(1.1)自动类型提升与强制类型转换1.自动类型提升2.强制类型转换所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复