lua中的多个条件评估顺序和优先级

时间:2014-05-05 10:46:06

标签: lua

我需要评估类似的条件:

condition1 and (condition2 or condition3)

只有在condition2为真时才应评估condition3condition1。 我怎么用lua写这个?

下一个代码是否正确?

if condition1 and (condition2 or condition3) then
...
end

1 个答案:

答案 0 :(得分:5)

来自Lua manual

  

andor都使用捷径评估;也就是说,仅在必要时才评估第二个操作数。

因此,在表达式condition1 and (condition2 or condition3)中,condition2 or condition3仅在condition1为真时进行评估。

请注意,这也意味着在condition2 or condition3表达式中,condition3仅在condition2为假时进行评估。