求大神指导这神马回事呀。。。
public static void main(String[] args) {
//short类型变量,内存中2个字节
short s = 1;
/*
出现编译失败
s和1做运算的时候,1是int类型,s会被提升为int类型
s+1后的结果是int类型,将结果在赋值会short类型时发生错误
short内存2个字节,int类型4个字节
必须将int强制转成short才能完成赋值
*/
s = s + 1;//编译失败
s = (short)(s+1);//编译成功
}
大神,这道题中:s=s+1 里面的1 怎么是int的型的呢?
short 占2个字节,难道1 不止两个字节有4个字节?那short是短整型还能存啥嘛。。。