A.short a=10;a=a+1;//编译报错
由于a+1运算时会自动提升表达式的类型,为int类型, 结果赋值给short类型的a时,类型会不匹配,所以编译报错
B.short a=10;a+=1;//正常编译 因为java编译器会对+=做特殊处理,进行类型转换,因此可以正常编译
short a=10;a=a+1;和short 10;a+=1;的区别
最新推荐文章于 2021-05-23 21:12:45 发布
A.short a=10;a=a+1;//编译报错
由于a+1运算时会自动提升表达式的类型,为int类型, 结果赋值给short类型的a时,类型会不匹配,所以编译报错
B.short a=10;a+=1;//正常编译 因为java编译器会对+=做特殊处理,进行类型转换,因此可以正常编译