Оператор присваивания сложения (+=)
Складывает значения выражения и переменной и присваивает результат переменной.
result += expression
Аргументы
result
Любая переменная.выражение
Произвольное выражение.
Заметки
Использование этого оператора практически ничем не отличается от указания выражения result = result + expression за одним исключением: значение result вычисляется только один раз.
Тип выражения определяет поведение оператора +=.
Результат |
expression |
Then |
---|---|---|
char |
char |
Ошибка |
char |
Число |
Add |
char |
String |
Ошибка |
Число |
char |
Add |
Число |
Число |
Add |
Число |
String |
Объединение |
String |
char |
Объединение |
Строка |
Число |
Объединение |
String |
String |
Объединение |
При объединении числа приводятся к строковому представлению числового значения, а знаки считаются строками длиной 1. Для сложения знака и числа знак приводится к числовому значению и два числовых значения складываются. При некоторых сочетаниях типов возникают ошибки, поскольку результат сложения невозможно привести к требуемому выходному типу.
Пример
В следующем примере показано, как оператор назначения сложения обрабатывает выражения разных типов.
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.