Каждый оператор в языке C# характеризуется приоритетом, в котором он будет выполнен при исполнении выражения.
В том случае, когда выражение содержит операторы, приоритет выполнения которых одинаковый, то исполнение осуществляется слева направо, за исключением операторов присваивания и сравнения (у них порядок справа налево).
Далее представлены группы операторов, отсортированные по приоритету (в рамках группы приоритет одинаковый):
🔸 Pimary: x.y f(x) a[x] x++ x– new typeof checked unchecked
🔸 Unary: + – ! ~ ++x –x (T)x
🔸 Multiplicative: * / %
🔸 Additive: + –
🔸 Shift: << >>
🔸 Relational: < > <= >= is as
🔸 Equality: == !=
🔸 Logical AND: &
🔸 Logical XOR: ^
🔸 Logical OR: |
🔸 Conditional AND: &&
🔸 Conditional OR: ||
🔸 Conditional: ?:
🔸 Assignment: = *= /= %= += -= <<= >>= &= ^= |=
Стоит так же заметить, что порядок выполнения операторов в выражении может быть изменён путём добавления круглых скобок (в таком случае по аналогии с математическими выражениями, приоритет исполнения заключённых операторов будет выше).
#basics