Эффективное сочетание операторов (Visual Basic)
Сложные выражения могут содержать множество различных операторов. Это показано в следующем примере.
x = (45 * (y + z)) ^ (2 / 85) * 5 + z
Для создания сложных выражений, таких как в предыдущем примере, требуется тщательное понимание правил приоритета оператора. Дополнительные сведения см. в разделе "Приоритет оператора" в Visual Basic.
Скобки
Часто операции будут выполняться в другом порядке, отличном от того, что определяется приоритетом оператора. Рассмотрим следующий пример.
x = z * y + 4
Предыдущий пример умножается z
на y
, а затем добавляет результат 4
в . Но если вы хотите добавить y
и 4
прежде чем умножать результат z
, можно переопределить приоритет обычных операторов с помощью круглых скобок. Заключив выражение в скобки, необходимо принудительно оценить это выражение, независимо от приоритета оператора. Чтобы принудить предыдущий пример сначала выполнить добавление, его можно переписать, как показано в следующем примере.
x = z * (y + 4)
В предыдущем примере добавляется y
и 4
умножается сумма z
на .
Вложенные скобки
Выражения можно вложить в несколько уровней круглых скобок, чтобы переопределить приоритет еще больше. Выражения, наиболее глубоко вложенные в скобки, оцениваются сначала, за которым следует следующее наиболее глубоко вложенное, и т. д. до наименьшего глубоко вложенного, и, наконец, выражения вне круглых скобок. Это показано в следующем примере.
x = (z * 4) ^ (y * (z + 2))
В предыдущем примере z + 2
сначала вычисляется, а затем другие скобки. Экспонентация, которая обычно имеет более высокий приоритет, чем добавление или умножение, вычисляется в последнем примере, так как другие выражения заключены в скобки.
См. также
- Арифметические операторы в Visual Basic
- Comparison Operators in Visual Basic
- Логические и битовые операторы в Visual Basic
- Логические или битовые операторы (Visual Basic)
- Логические выражения
- Сравнения значений
- Практическое руководство. Вычисление числовых значений
- Порядок применения операторов в Visual Basic