演算子と制御構文比較問題

Javaにおける「加算代入演算子(+=)」と「単純な加算と代入(= a + b)」の違いとして正しいものはどれですか?

A.+=は浮動小数点数に適用できないが、単純な加算と代入は適用できる
✗ 誤りです。+=は浮動小数点数を含むすべての数値型に適用できます。
B.+=と単純な加算と代入は機能・動作ともに完全に同一であり、いかなる場合も差異はない
✗ 不正確です。+=は暗黙の型キャストを行うため、単純な加算と代入と完全に同一ではありません。例えばbyte b = 0; b += 1;はコンパイルエラーになりませんが、b = b + 1;はエラーになります。
C.+=は短い記述で計算と代入を同時に行い可読性が向上するが、暗黙の型キャストが行われるため単純代入と完全に同一ではない← 正解
✓ 正解です。+=は簡潔な表記で計算と代入を同時に行い可読性が高くなります。また+=は左辺の型への暗黙のキャストを伴うため、単純な加算と代入と完全に等価ではない場合があります。
D.+=は整数型にのみ適用でき、単純な加算と代入はすべての型に適用できる
✗ 誤りです。+=は浮動小数点数など数値型全般に適用できます。

Oracle Certified Java Programmer, Bronze SE の問題一覧