Java -- 表达式类型的自动提升

1. 提升规则:

a. 所有byte型,short型和char型将被提升到int型。

b. 整个算数表达式的数据类型自动提升到与表达式中最高等级操作数同样的类型。

例1:

short val = 5; 

val = val -2 ;

编译时将报错 "Type mismatch: cannot convert from int to short",表达式中右边的val自动提升为int型,int --> short故报错。

 

例2:

byte b = 40;

char c = 'a';

int i = 23;

double d = 0.314;

double result = b + c + i*d ;

System.out.println(result);

表达式右边将提升为其中最高d的类型 double, 左边也是double, 所以正确。

 

例3:

System.out.println("hello" + ‘a’ + 7);        ------》 helloa7

System.out.println('a' + 7 + "hello");         -----》104hello

 

转载于:https://www.cnblogs.com/xj626852095/p/3648086.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值