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 |