Курс языка программирования Raku / Основы / Основы переменных и типов данных / Булев тип
Логические операции с другими типами
В следующей главе мы поговорим о приведении значений одних типов к другим. Но сейчас очень важно отметить одну особенность Raku. Когда вы применяете логические операции к строкам и числам, значения не приводятся к булеву типу, и результат тоже не является булевым. Рассмотрим пример ниже:
say 'Hello' && 'World'; # World
say 'Alpha' || 'Beta'; # Alpha
say 0 ^^ 42; # 42Давайте прочтем правила 📖 из документации:
&&возвращает первый ложный аргумент, иначе возвращает последний аргумент.||возвращает первый истинный аргумент, иначе возвращает последний аргумент.^^возвращает истинный аргумент, если он один и только один. Возвращает последний аргумент, если все аргументы ложные. ВозвращаетNil, если больше чем один аргумент истинный.
Истинный аргумент означает, что он имеет значение True в булевом
контексте. Соответственно — ложный аргумент имеет значение False.
Заметьте, что мы только что познакомились с “нулевым” значением
Nil.
Практика
Пройдите 1 тест по содержанию этой темы.
Навигация по курсу
← Тест: Логические операции | Тест: Логические операции с небулевыми данными →
💪 Или перейдите сразу к упражнениям этого
раздела.