将变量值与表达式值相加,并将结果赋给该变量。
result += expression
- result
任何变量。
- 表达式
任何表达式。
使用此运算符的效果基本上与指定 result = result + expression 相同,不同的只是仅计算一次 result。
表达式的类型决定 += 运算符的行为。
结果 | 表达式 | Then |
---|---|---|
char |
char |
Error |
char |
Numeric |
Add |
char |
String |
Error |
Numeric |
char |
Add |
Numeric |
Numeric |
Add |
Numeric |
String |
连接 |
String |
char |
连接 |
字符串 |
Numeric |
连接 |
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.要求请参见
参考
加法运算符 (+)赋值运算符 (=)
概念
运算符优先级运算符摘要