加算代入演算子 (+=)
変数の値に式で指定された値を加算し、その結果を変数に代入します。
result += expression
引数
result
任意の変数。expression
任意の式を指定します。
解説
この演算子は、result = result + expression と指定する場合とほぼ同じ結果になります。ただし、result は一度しか評価されません。
+= 演算子の動作は、指定する式の型によって決まります。
結果 |
式 |
動作 |
---|---|---|
char |
char |
エラー |
char |
数字 |
追加 |
char |
String |
エラー |
数字 |
char |
追加 |
数字 |
数字 |
追加 |
数字 |
String |
連結 |
String |
char |
連結 |
String |
数字 |
連結 |
String |
String |
連結 |
連結の場合、数字は数値の文字列表現に変換され、文字は長さが 1 の文字列と見なされます。 文字と数字の加算の場合は、文字が数値に変換され、2 つの値が加算されます。 いくつかの型の組み合わせでは、加算の結果を必要な出力の型に変換できないためエラーが発生します。
使用例
次の例は、加算代入演算子が異なる型の式を処理するようすを示しています。
var str : String = "42";
var n : int = 20;
var c : char = "A"; // The numeric value of "A" is 65.
var result;
c += n; // The result is the char "U".
n += c; // The result is the number 105.
n += n; // The result is the number 210.
n += str; // The result is the number 21042.
str += c; // The result is the string "42U".
str += n; // The result is the string "42U21042".
str += str; // The result is the string "42U2104242U21042".
c += c; // This returns a runtime error.
c += str; // This returns a runtime error.
n += "string"; // This returns a runtime error.