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