Adds the value of one numeric expression to another or concatenates two strings.
expression1 + expression2 |
Arguments
- expression1
-
Any expression.
- expression2
-
Any expression.
Remarks
The type of the expressions determines the behavior of the + operator.
If | Then | Result Type |
---|---|---|
Both expressions are char |
Concatenate |
String |
Both expressions are numeric |
Add |
numeric |
Both expressions are strings |
Concatenate |
String |
One expression is char and the other is numeric |
Add |
char |
One expression is char and the other is a string |
Concatenate |
String |
One expression is numeric and the other is a string |
Concatenate |
String |
For concatenation, numbers are coerced into a string representation of the numeric value, and chars are considered to be strings of length 1. For addition of a char and a number, the char is coerced into a numeric value, and the two numbers are added.
Note |
---|
In scenarios where type annotation is not used, numeric data may be stored as a strings. Use explicit type conversion or type annotate variables to ensure that the addition operator does not treat numbers as strings, or vice versa. |
Example
The following example illustrates how the addition operator processes expressions of different types.
В | Copy Code |
---|---|
var str : String = "42"; var n : double = 20; var c : char = "A"; // the numeric value of "A" is 65 var result; result = str + str; // result is the string "4242" result = n + n; // result is the number 40 result = c + c; // result is the string "AA" result = c + n; // result is the char "U" result = c + str; // result is the string "A42" result = n + str; // result is the string "2042" // Use explicit type coversion to use numbers as strings, or vice versa. result = int(str) + int(str); // result is the number 84 result = String(n) + String(n); // result is the string "2020" result = c + int(str); // result is the char "k" |