9.5 Operators
In addition to the . and [] operators discussed in Value and Method Expressions, the EL provides the following operators, which can be used in rvalue expressions only.
- 
Arithmetic: +,-(binary),*,/anddiv,%andmod,-(unary).
- 
String concatenation: +=.
- 
Logical: and,&&,or,||,not,!.
- 
Relational: ==,eq,!=,ne,<,lt,>,gt,<=,ge,>=,le. Comparisons can be made against other values or against Boolean, string, integer, or floating-point literals.
- 
Empty: The emptyoperator is a prefix operation that can be used to determine whether a value isnullor empty.
- 
Conditional: A ? B : C. EvaluateBorC, depending on the result of the evaluation ofA.
- 
Lambda expression: ->, the arrow token.
- 
Assignment: =.
- 
Semicolon: ;.
The precedence of operators, highest to lowest, left to right, is as follows:
- 
[] .
- 
()(used to change the precedence of operators)
- 
-(unary)not ! empty
- 
* / div % mod
- 
+ -(binary)
- 
+=
- 
<> <= >= lt gt le ge
- 
== != eq ne
- 
&& and
- 
|| or
- 
? :
- 
->
- 
=
- 
;
