Lua - if语句同时应用于同一个变量的两个条件?

如何在 Lua 编程语言中的 if 语句中设置一个变量的上限和下限值?我需要像下面的伪代码一样做。

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

我尝试了不同的格式,但我的应用程序还是崩溃了。

更新:

对于任何对 Lua 语法有同样疑惑的人,我建议在此处查看文档并将其随手备查。在学习时会很有用。

原文链接 https://stackoverflow.com/questions/8982860

点赞
stackoverflow用户716118
stackoverflow用户716118

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

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

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 < z 变成 true AND y < z,以 true AND true 为结果,最终得到 true

2012-01-24 06:39:15