因为你没指定结果的类型,默认int;两个变量各有一块空间,相加,那虚拟机不得有个地方放结果?结果数据类型没指定,那不是默认的int?
精度小于int的数值运算的时候都会被自动转换为int后进行计算
不要写short s1=1; s1=s1+1;写成short s1=1; s1+=1;可以编译通过!