链接Lua中的逻辑操作

时间:2014-05-12 04:58:37

标签: if-statement lua logical-operators

这是在Lua中执行此操作的最有效方法吗?谢谢!

if X >= 0 and Y >= 0 then
    if X1 <= 960 and Y1 <= 720 then
        someCode()
    else end
else end

2 个答案:

答案 0 :(得分:1)

避免嵌套if语句是个好主意,我会尝试单if项检查。 最好的方法是分析功能,看看哪些功能更快。

-- Be paranoid and use lots of parenthesis:
if ( ( (X >= 0) and (Y >= 0) ) and ( (X1 <= 960) and (Y1 <= 720) ) ) then
    someCode()
end

这是相同但更容易阅读。好的代码不仅速度快,而且易于阅读。

local condition1 = ((X >= 0) and (Y >= 0))
local condition2 = ((X1 <= 960) and (Y1 <= 720))

if (condition1 and condition2) then
    someCode()
end

答案 1 :(得分:0)

您还可以使用运算符使其缩短:

if ((X >= 0 && Y >= 0) && (X1 <= 960 && Y1 <= 920)) then
    someCode()
end

如果你正在寻找可读性,那么Yowza的答案也应该足够了。