首先,s=s+1;先执行等式右边的,s+1会转化为int,int不能转换为short ,不能隐形从大到小转类型,只能强转。所以会出现编译出错的问题;
而s+=1;+=是一个操作符,在解析的时候等价于:s=(short)s+1.