A precedência de um operador especifica quão "intimamente" ele liga duas expressões. Por exemplo, na expressão 1 + 5 * 3, a resposta é 16 e não 18 porque o operador de multiplicação ("*") tem uma precedência mais alta que o operador de adição ("+").
A tabela a seguir lista a precedência de operadores com os operadores de menor precedência listados primeiro.
Tabela 10-6. Precedência de Operadores
| Associatividade | Operadores |
|---|---|
| esquerda | , |
| esquerda | or |
| esquerda | xor |
| esquerda | and |
| direita | |
| esquerda | = += -= *= /= .= %= &= |= ^= ~= <<= >>= |
| esquerda | ? : |
| esquerda | || |
| esquerda | && |
| esquerda | | |
| esquerda | ^ |
| esquerda | & |
| non-associative | == != === |
| non-associative | < <= > >= |
| esquerda | << >> |
| esquerda | + - . |
| esquerda | * / % |
| direita | ! ~ ++ -- (int) (double) (string) (array) (object) @ |
| direita | [ |
| non-associative | new |