# opr-java - Java operator precedence reference table
# Steve Kinzler, steve@kinzler.com, Mar 98
# https://kinzler.com/me/home.html#refer

Prec | Operator   | Operand Type(s) | Assoc | Operation Performed
-----+------------+-----------------+-------+---------------------------------
1    | ++         | arithmetic      | R     | pre-or-post increment (unary)
     | --         | arithmetic      | R     | pre-or-post decrement (unary)
     | +   -      | arithmetic      | R     | unary plus, unary minus
     | ~          | integral        | R     | bitwise complement (unary)
     | !          | boolean         | R     | logical complement (unary)
     | (type)     | any             | R     | cast
2    | *   /   %  | arithmetic      | L     | multiplication, division, modulo
3    | +   -      | arithmetic      | L     | addition, subtraction
     | +          | String          | L     | string concatenation
4    | <<         | integral        | L     | left shift
     | >>         | integral        | L     | right shift with sign extension
     | >>>        | integral        | L     | right shift with zero extension
5    | <   <=     | arithmetic      | L     | less than, less than or equal
     | >   >=     | arithmetic      | L     | greater than, greater than or =
     | instanceof | object,type     | L     | type comparison
6    | ==         | primitive       | L     | have identical values
     | !=         | primitive       | L     | have different values
     | ==         | object          | L     | refer to same object
     | !=         | object          | L     | refer to different objects
7    | &          | integral        | L     | bitwise AND
     | &          | boolean         | L     | boolean AND
8    | ^          | integral        | L     | bitwise XOR
     | ^          | boolean         | L     | boolean XOR
9    | |          | integral        | L     | bitwise OR
     | |          | boolean         | L     | boolean OR
10   | &&         | boolean         | L     | conditional AND
11   | ||         | boolean         | L     | conditional OR
12   | ?:         | boolean,any,any | R     | conditional (ternary) operator
13   | =          | variable,any    | R     | assignment
     | *=  /=  %= | variable,any    | R     | assignment with operation
     | +=  -=     +-----------------+
     | <<= >>= >>>= &=  ^=  |=
