5.6.9 Operator Expressions
There are two kinds of operators. Unary operators take one operand and use prefix notation (for example, –x). Binary operators take two operands and use infix notation (for example, x + y). With the exception of the relational operators, which always result in Boolean, an operator defined for a particular type results in that type. The operands to an operator must always be classified as a value; the result of an operator expression is classified as a value.

operatorexpression = arithmeticoperator / concatenationoperator / relationaloperator / likeoperator / isoperator / logicaloperator
Static semantics. An operator expression is classified as a value.
Show: