基本数据类型间的一些运算规则--自动类型提升与强制类型转换

  • 自动类型提升
  1. 当容量小的数据类型的变量与容量大的数据类型的变量做运算时,结果自动提升为容量大的数据类型。
  2. 七种数据类型的容量大小顺序为:byte、char、short -> int -> long -> float ->double;其中,byte、char、short三种类型变量做运算时,结果为int型。
  • 强制类型转换
  1. 自动类型提升的逆运算。
  2. 需要使用强转符号:()
  3. 强转可能导致精度损失,当大容量向小容量强转的某些情况下。
    double d=1.9;
    int i=(int)d;
    System.out.println(i);	//输出为1,存在精度损失
    
  • 特殊情况
    整型常量,默认类型为int型;浮点型常量,默认类型为double型。
long l1 = 123123;  //编译成功
long l2 = 123123123123123;	//编译失败,数太大了
long l3 = 123123123123123L;	//编译成功
float f1 = 1.2;	//编译失败,因为double的容量大于float
float f2 = (float)1.2;	//编译成功
byte b = 12;
byte b1 = b + 1;	//编译失败
float f3 = b + 1.2;	//编译失败
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值