如何进行显式铸造

时间:2012-12-18 07:48:45

标签: java casting int byte

  

可能重复:
  Java += operator

我们可以将值添加到任何变量中b+=8b=b+8两者都会将8的值添加到变量b中。我在采访中得到了这个问题,那是

byte b=7;
b=b+8; //compile error

输出什么,我勾选了compile time error,因为添加byteint将是int(我相信),因为我们正在尝试存储{{ 1}}值转换为int。但是,当我自己尝试下面的代码时

byte

然后,上面的代码编译并完美运行,没有任何错误,并返回byte b=7; b+=8; //OK 。现在,我的问题是为什么以及如何?我的意思是,为什么它不需要显式铸造?

1 个答案:

答案 0 :(得分:1)

这是b = b + 8b += 8

的唯一区别

编译器自动投射。

相关问题