我正在学习java并创建一些带有注释的简单测试程序,我收到一个错误,说“不兼容的类型:从int到short的可能有损转换”,short short = val5 + val6;我看起来这个错误意味着我正在尝试将一个int值放入一个短变量,但我在短片中存储的值只有27,所以我对于什么是错误我有点困惑。
public class test{
public static void main(String[] args){
double val1=4;
float val2=9;
long val3=30;
int val4= 8;
short val5= 15;
short val6=12;
byte val7=20;
short shortVal= val5 + val6; //why the error here?
}
}
答案 0 :(得分:1)
short + short
的结果有点矛盾,int
。因此,您尝试将int
分配给short
变量(shortVal
)。
答案 1 :(得分:1)
short
+ short
会产生int
。您需要int
变量来存储结果:
int shortVal = val5 + val6;