LUA语言中的If...Else条件

我是编程新手,最近开始入门LUA。我有一个小问题,如果您能帮我解决就非常有帮助了。在我的代码中,我需要编写以下内容 如果x~=1且x~=2且x~=3且x~=4,那么(做某事)结束 有没有更快的方法不是硬编码那部分,不必从x=1到x=4键入整个内容? 谢谢!

点赞
用户2858170
用户2858170

如果您需要像 if x ~= 1 and x~=2 and x~=3 and x~=4 then (do something) end 这样的东西,其中 x 通常是一个整数。

那么,您需要的是:

if x < 1 or x > 4 then
  -- do your stuff here
end

如果您要明确检查 x 是否不等于 1、2、3、4,您可以像 Egor 建议的那样简单地执行某些操作。

但正如您所看到的,除非您可以用更短的数学方式描述您的条件,否则您仍然有单独的独特条件,并且您不得不将它们写下来。

如果您需要重复检查这些条件,则可以使用像 Egor 的示例中的真值表,或编写一个函数,该函数返回其参数是否满足该条件。

2020-07-29 16:26:39