На этом шаге мы укажем приоритет рассмотренных операторов.
При вычислении сложных выражений, в которых используются различные операторы, порядок выполнения операций определяется приоритетом операторов. Подвыражения на основе операторов с более высоким приоритетом вычисляются ранее по сравнению с подвыражениями на основе операторов с более низким приоритетом. Если у операторов одинаковый приоритет, то подвыражения вычисляются в естественном порядке, слева направо. В таблице 1 основные операторы языка C# сгруппированы по уровню приоритета (от самых приоритетных до наименее приоритетных).
| Приоритет | Операторы |
|---|---|
| 1 | Круглые скобки (), квадратные скобки [ ], оператор "точка" ., операторы инкремента ++ и декремента -- в постфиксной форме (то есть в выражениях вида А++ и А--) |
| 2 | Унарный оператор "плюс" +, унарный оператор "минус" -, оператор побитовой инверсии оператор логического отрицания !, операторы инкремента ++ и декремента -- в префиксной форме (то есть в выражениях вида ++А и --А), операция явного приведения типа |
| 3 | Оператор умножения *, оператор деления /, оператор вычисления остатка отделения % |
| 4 | Оператор сложения +, оператор вычитания - |
| 5 | Оператор побитового сдвига вправо >>, оператор побитового сдвига влево << |
| 6 | Оператор сравнения "больше" >. оператор сравнения "больше или равно" >=, оператор сравнения "меньше" <, оператор сравнения "меньше или равно" <= |
| 7 | Оператор сравнения "равно" ==, оператор сравнения "не равно" != |
| 8 | Оператор "побитовое и" & (также "логическое и" в полной форме) |
| 9 | Оператор "побитовое исключающее или" ^ (также "логическое исключающее или") |
| 10 | Оператор "побитовое или" | (также "логическое или" в полной форме) |
| 11 | Оператор "логическое и" в упрощенной форме && |
| 12 | Оператор "логическое или" в упрощенной форме || |
| 13 | Тернарный оператор ?: |
| 14 | Оператор присваивания =, операторы сокращенного присваивания *=, /=, %=, +=, -=, <<=, >>=, &=, ^= и |= |
Для изменения порядка вычисления выражений можно использовать круглые скобки.
Помимо своего прямого назначения - изменения порядка вычисления подвыражений - круглые скобки облегчают чтение программного кода. Так что их
нередко используют и в "декоративных" целях, когда прямой необходимости в этом нет.
На следующем шаге мы рассмотрим несколько примеров программ.