|
Precedence Operator Associativity ----------------------------------------------------------------------------------- 1 (high) var++ var-- left → right 2 + − (unary plus and minus) ++var --var left → right 3 (double) (float) (long) (int) (short) (byte) left → right 4 ! (not) left → right 5 * / % (multiply, divide, remainder) left → right 6 + - (add, subtract) left → right 7 < <= > >= left → right 8 == != left → right 9 ^ left → right 10 && left → right 11 || left → right 12 ?: (conditional expression) left → right 13 = += -= *= /= %= (Assignment operators) right → left |
•
Do not
memorize the
precedence of the
operators
• Use
brackets ( ... ) to
make sure an
expression is
evaluated correctly
Precedence Operator Associativity ----------------------------------------------------------------------------------- 1 (high) var++ var-- left → right 2 + − (unary plus and minus) ++var --var left → right 3 (double) (float) (long) (int) (short) (byte) left → right 4 ! (not) left → right 5 * / % (multiply, divide, remainder) left → right 6 + - (add, subtract) left → right 7 < <= > >= left → right 8 == != left → right 9 ^ left → right 10 && left → right 11 || left → right 12 ?: (conditional expression) left → right 13 = += -= *= /= %= (Assignment operators) right → left |
DEMO: demo/03-selections/10-precedence+assoc/Quiz.java