我了解到i+=2是i=i+2的简写。但是现在我对此表示怀疑。对于以下代码,上述知识无效: 上面的代码是合理的,因为2是int类型,并且表达式返回int值。但是,以下代码运行良好: 这使我怀疑+=简写运算符比我所知道的还要多。请赐教。 最佳答案 如有疑问,您可以随时查看Java语言规范。在这种情况下,相关部分为15.26.2,复合赋值运算符。 因此,您几乎是正确的,除了还添加了强制类型转换。在您的情况下:b+=2;符合b=(byte)(b+2);