In Java, there are six categories of operators.
Precedence Operator Description Association 1 ++,-- Postincrement, Postdecrement R -> L 2 ++,-- Preincrement, Predecrement R -> L +,- Unary plus, unary minus R -> L ~ Bitwise compliment R -> L ! Boolean NOT R -> L 3 new Create object R -> L (type) Type cast R -> L 4 *,/,% Multiplication, division, remainder L -> R 5 +,- Addition, subtraction L -> R + String concatenation L -> R 6 <<, >>, >>> Left shift, right shift, unsigned right shift L -> R 7 <, <=, >, >= L -> R instanceof Type comparison L -> R 8 ==, != Value equality and inequality L -> R ==, != Reference equality and inequality L -> R 9 & Boolean AND L -> R & Bitwise AND L -> R 10 ^ Boolean XOR L -> R ^ Bitwise XOR L -> R 11 | Boolean OR L -> R | Bitwise OR L -> R 12 && Conditional AND L -> R 13 || Conditional OR L -> R 14 ?: Conditional Ternary Operator L -> R 15 =,+=,-=, Assignment Operators R -> L *=,/ =,%=, &=,^=, |=, <<=, >> =, >>>=
3.1.Operators | ||||
3.1.1. | Six categories of operators | |||
3.1.2. | Operator Precedence | |||
3.1.3. | The op= Operators | |||
3.1.4. | The ternary operator (The Conditional Operator): result = value>conditionValue ? result1 : result2 | |||
3.1.5. | Tests all the operators on all the primitive data types to show which ones are accepted by the Java compiler |