Курс 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 вправи. Перш ніж братися до практики, вивчіть усі теми розділу.