short s1 = 1; s1 = s1 + 1; 编译能否通过,请说明理由?

参考解答

不能:s1+1 发生了类型提升,提升为int整型,int不能直接赋值给short变量

追问 short s1 = 1; s1 += 1;编译能否通过,请说明理由?

参考解答

能。s1 += 1 采用的增强赋值运算符,增强赋值运算符,以及自增、自减运算符均不会发生类型提升。


results matching ""

    No results matching ""