第一个有错,因为s1是short类型,s1 + 1会自动转换为int类型,将int类型赋值给short类型的s1,属于高位类型转低位,需强制转换。
第二个正确,因为s1 += 1 相当于 s1 = (short) (s1 + 1),默认会有强制类型转换。
从低位类型到高位类型自动转换;从高位类型到低位类型需要强制类型转换
第一个有错,因为s1是short类型,s1 + 1会自动转换为int类型,将int类型赋值给short类型的s1,属于高位类型转低位,需强制转换。
第二个正确,因为s1 += 1 相当于 s1 = (short) (s1 + 1),默认会有强制类型转换。
从低位类型到高位类型自动转换;从高位类型到低位类型需要强制类型转换