Lua里 像 C里面的 if(a >= 20 && a <= 100) 这样的逻辑应该怎么写?Lua逻辑且有短路

2024-12-04 13:49:17
推荐回答(3个)
回答(1):

if a>=20 and a <= 100 then
    --your code
end

回答(2):

Lua 中的逻辑操作符有 and, or, 以及 not。 和控制结构一样, 所有的逻辑操作符把 false 和 nil 都作为假, 而其它的一切都当作真。
取反操作 not 总是返回 false 或 true 中的一个。 与操作符 and 在第一个参数为 false 或 nil 时 返回这第一个参数; 否则,and 返回第二个参数。 或操作符or 在第一个参数不为 nil 也不为 false 时, 返回这第一个参数,否则返回第二个参数。 and 和 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

-----------------------------

回答(3):

if a>=20 and a<=100 then
代码.....

end;