字节y = y + x;导致错误,但y + = x;编译成功。为什么呢?

时间:2017-12-03 02:46:33

标签: java byte short

在Java中,当我们使用字节或短数据类型时会出现问题。

byte y=19;
byte x=10;
y=y+x; //Compile Error:
System.out.println(y);

这是该程序的输出。

error: incompatible types: possible lossy conversion from int to byte

但是当我们使用x + = 1时,它不会产生任何编译错误。

byte y=19;
byte x=10;
y+=x; //No Errors !?    
System.out.println(y);

输出为29

x=x+1x+=1之间是使用字节还是短数据类型?

0 个答案:

没有答案