-
+= 隐式的将相加的结果类型,强制转换为【持有结果】的类型
-
+= 在 Java 中是一个运算符,而不是两个
-
自动向高精度进行数据类型转换
-
如 short 和 int 相加,首先会将 short 提升到 int 类型,然后在执行加法操作。
-
-
如果加法操作的结果比 a 的最大值要大,则 a+b、a+=b 不会报错,但由于最高位是 1,显示负数
int a = Integer.MAX_VALUE; // 01111111111111111111111111111111
a = a + a; // 11111111111111111111111111111110
a = a + 1; // 11111111111111111111111111111111
a = a + 1; // 00000000000000000000000000000000
在Java中,运算符+=会隐式地将相加的结果转换为目标类型的值。例如,当short和int相加时,short会被提升到int类型再进行计算。即使结果超出了变量的最大值,如Integer.MAX_VALUE的加法,不会立即抛出错误,但会因溢出导致高位变成1,显示为负数。这种情况下,连续的+=操作可能导致看似不一致的结果。
352

被折叠的 条评论
为什么被折叠?



