我最近一直在使用 Java 的 byte 原语,但遇到了一个愚蠢的问题:
byte a = 10;
byte b = 9;
byte c = 8;
b += b*c; // how come this statement is correct without any explicit type casting
b = b*c; // while this statement is incorrect; it requires explicit cast, of course
b = b+(b*c); // this is wrong too.
所以我的问题是,+=
除了添加和分配之外,是否指定了任何分配,或者这是 Java 中的错误(我几乎可以肯定不是)?