java笔记short相加自动转换

来源:互联网 发布:手机打卡考勤软件 编辑:程序博客网 时间:2024/04/30 20:40


所以,下面的代码会报编译错误

short s1 = 5;
s1= (s1+1);

必须改成:

short s1 = 1;
s1= (short)(s1+1);


但是,s1+=4;是正确的

在s1+1运算时会自动提升表达式的类型为int,那么将int赋予给short类型的变量s1会出现类型转换错误。 对于short s1=1;s1+=1来说 +=是java语言规定的运算符,java编译器会对它进行特殊处理,因此可以正确编译。


0 0
原创粉丝点击