次の点を考慮してください。
int a = 1;
double b = 0.5;
System.out.println(a += b); // case x
System.out.println(a = a + b); // case y
すぐにわかるのは、上記がコンパイルさえしないということです - ケース y は「互換性のない型」のために失敗します。ケース x を単独で実行すると、単純に a が返されます。
ここで何が起こっているのですか?省略形の演算子 (+=) は、失敗した代入を「キャッチ」し、デフォルトで単純に lhand 値を返しますか? もしそうなら、チュートリアルで非常に一般的であるように、a += b が a = a + b と同等であると主張するのは本当に正しいですか?