Курс языка программирования Raku / Продвинутый уровень / Операторы
Обзор поведения операторов
Когда выражение содержит несколько операторов, Raku должен решить, в каком порядке их применять. Два правила определяют это: приоритет и ассоциативность.
Приоритет
Приоритет определяет, какой оператор связывается теснее. Умножение имеет более высокий приоритет, чем сложение, поэтому выполняется первым:
say 2 + 3 * 4; # 14Выражение читается как 2 + (3 * 4), давая
14, а не 20. Вы всегда можете использовать
скобки, чтобы задать другой порядок:
say (2 + 3) * 4; # 20Ассоциативность
Ассоциативность определяет порядок между операторами с одинаковым приоритетом. Вычитание является левоассоциативным, поэтому группируется слева:
say 8 - 3 - 2; # 3Это (8 - 3) - 2, что равно 3. Возведение в
степень, напротив, является правоассоциативным:
say 2 ** 3 ** 2; # 512Здесь выражение группируется как 2 ** (3 ** 2), то есть
2 ** 9, что равно 512.
Цепочки сравнений
Операторы сравнения можно объединять в цепочки, что читается естественно и работает так, как вы ожидаете из математики:
say 1 < 2 < 3; # True
say 1 < 5 < 3; # FalseСреднее значение сравнивается с обоими соседями:
1 < 2 < 3 истинно, потому что 1 < 2 и
2 < 3 оба истинны.
Практика
Пройдите 1 тест по содержанию этой темы.
Упражнения
В этом разделе 3 упражнения. Прежде чем приступать к практике, изучите все темы раздела.