下表列出了所有的Lua语言支持的逻辑运算符。假设变量A持有true,而变量B持有false:
运算符 | 描述 | 示例 |
---|---|---|
and | 所谓逻辑与运算符。如果两个操作数都是不为零,则条件成立。 | (A and B) 为 false. |
or | 调用逻辑OR运算符。如果有两个操作数是不为零,则条件变为真。 | (A or B) 为 true. |
not | 所谓逻辑非运算符。用于反转操作数的逻辑状态。如果一个条件为真,则逻辑非运算符将返回false。 | !(A and B) 为 true. |
试试下面的例子就明白了所有的Lua编程语言提供的逻辑运算符:
a = 5 b = 20 if ( a and b ) then print("Line 1 - Condition is true" ) end if ( a or b ) then print("Line 2 - Condition is true" ) end --lets change the value ofa and b a = 0 b = 10 if ( a and b ) then print("Line 3 - Condition is true" ) else print("Line 3 - Condition is not true" ) end if ( not( a and b) ) then print("Line 4 - Condition is true" ) else print("Line 3 - Condition is not true" ) end
当建立并执行上面的程序它会产生以下结果:
Line 1 - Condition is true Line 2 - Condition is true Line 3 - Condition is true Line 3 - Condition is not true