The concatenation operator is a feature of the MVEL language due to the nature in which MVEL deals with types. For example, the expression "1" + "1" will return an integer value of 2 in MVEL. This may come as a surprise to some people.

The reason for this is, that MVEL always tries to recognize numbers, even if they are contained within a String. This is designed to make it easier to integrate MVEL in some scenarios and save the time of finessing numeric variables with Integer.parseInt(), for example.

Therefore, MVEL uses the # (pound sign/number sign) as the concatenation operator.

Examples

43 # 3 # "foobar"; // returns "433foobar"
   
"foo" # "bar"; // returns "foobar"