Документация Скачать
Поиск:

Справочное руководство по языку Lua 5.1



2.5.3 – Логические операции

В Lua это операции and (и), or (или), и not (не). Так же, как и в управляющих конструкциях (§2.4.4), все логические операции рассматривают false и nil как ложь, а все остальное как истину.

Операция отрицания not всегда возвращает false или true. Операция конъюнкции and возвращает свой первый параметр, если его значение false или nil; в противном случае and возвращает второй параметр. Оператор дизъюнкции or возвращает первый параметр, если его значение отлично от nil и false; в противном случае or возвращает второй параметр. Оба оператора вычисляют второй операнд только в случае нееобходимости.

Примеры:


    10 or 20            --> 10
   
     10 or error()       --> 10
   
     nil or "a"          --> "a"
   
     nil and 10          --> nil
   
     false and error()   --> false
   
     false and nil       --> false
   
     false or nil        --> nil
   
     10 and 20           --> 20
   

(В данном руководстве, --> указывает на результат предшествовающего выражения.)

Перепечатка материалов только с разрешения владельцев сайта Lua.ru.