因为short b=1中的1其实是int型,然而这种赋值编译器会自动将int型转成short型,前提是编译时,如果是运行时就不会自动转了哦!也就是后面的b=b+1,其中"小类型"与"大类型"计算,结果是大类型,也就是(b+1)是int型,int型赋给short型,且是运算中,那么就会编译不通过呀
short b = 1;b = b + (short)1;你试试这个!!!