布尔值可以包含在"if"语句中吗?

  • 本文关键字:语句 if 布尔值 包含 lua
  • 更新时间 :
  • 英文 :


我刚刚开始学习Lua(现在已经4天了),在运行此代码时,我收到一个错误:input:2: 'then' expected near '='

这是我使用的代码:

local imagineVar = true
if imagineVar = true then
print("LOL")
end

我该如何解决这个问题?

if imagineVar then
print("LOL") 
end

在 Lua 中,除了falsenil之外,if 语句中的任何内容都将为真

您收到的错误是语法错误,因为赋值(var = something)是Lua中的语句而不是表达式 - 这意味着它们不会计算为值,因此不能在if条件(或预期表达式的任何其他位置)中使用。

正如其他人指出的那样,您将使用运算符==进行比较。但是,如果您的变量是布尔值,则检查真实性更为惯用:if imagineVar then ... end;只有当imagineVarnilfalse时,if的主体才会运行。

比较需要双'='

local imagineVar = true
if imagineVar == true then
print("LOL") 
end

最新更新