Lua - if语句对同一个变量有两个条件?

时间:2012-01-24 06:29:52

标签: if-statement lua corona

如何在lua编程语言中为if语句设置变量的下限和上限值?我需要类似下面的伪代码。

if ("100000" >= my_variable <= "80000") then
     do stuff...
end

我尝试了不同的格式,但我的应用程序一直在崩溃。

更新

对于对lua的语法有同样怀疑的人,我建议查看文档here并保持方便。它在学习时很有用。

1 个答案:

答案 0 :(得分:19)

如果您确定它应该是一个数字,并且没有理由将它变成一个字符串,那么您应该将您的字符串转换为数字。

以下是如何对范围进行比较:

myVariable = tonumber(myVariable)

if (100000 >= myVariable and myVariable >= 80000) then
    display.remove(myImage)
end

注意and。大多数编程语言都不会自动将表单x < y < z扩展为x < y AND y < z,因此您必须明确使用逻辑and。这是因为一方在另一方之前被评估,所以从左到右的顺序它最终从x < y < z变为true < z这是一个错误,而在显式方法中,它来自x < y AND y < ztrue AND y < ztrue AND truetrue