问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

lua中怎么描述(表达式A && 表达式B)的真假呢

发布网友 发布时间:2022-04-26 01:21

我来回答

2个回答

懂视网 时间:2022-04-26 05:42

算术操作符

Lua 的算术操作符有:

"+"(加法):

代码如下:
print(1 + 2)

"-"(减法):

代码如下:
print(2 - 1)

"*"(乘法):

代码如下:
print(1 * 2)

"/"(除法):

代码如下:
print(1 / 2)

"^"(指数):

代码如下:
print(27^(-1/3))

"%"(取模):

代码如下:
print(5 % 3)

关系操作符

Lua 提供以下关系操作符:

代码如下:
< > <= >= == ~=

以上操作符返回的运算结果都是 true 或 false。字符串跟数字不可以进行比较

逻辑操作符

逻辑操作符有 and、or、not

代码如下:
print(1 and 2)
print(nil and 1)
print(false and 2)
print(1 or 2)
print(false or 5)

逻辑操作符将 false 和 nil 视为假,其它的为真。

局部变量与作用域

Lua 通过 local 语句来创建局部变量,局部变量的作用域仅限于声明它们的那个块。

代码如下:
local a, b = 1, 10
if a < b then
print(a)
local a
print(a)
end
print(a, b)

用局部变量 local 保存全局变量,可以加速在当前作用域中对全局变量的访问。对于加速的效果,对比下面计算 斐波那契数列(Fibonacci)的执行时间便知:

代码如下:
function fibonacci(n)
if n < 2 then
return n
end
return fibonacci(n - 2) + fibonacci(n - 1)
end
io.write(fibonacci(50), " ")

使用局部变量 local

代码如下:
local function fibonacci(n)
if n < 2 then
return n
end
return fibonacci(n - 2) + fibonacci(n - 1)
end
io.write(fibonacci(50), " ")

控制结构

if then elseif else end

代码如下:
if num == 1 then
print(1)
elseif num == 2 then
print(2)
else
print("other")
end

Lua 不支持 switch 语句

while

先判断 while 条件,如果条件为真,继执行循环体,否则结束

代码如下:
local i = 1
while a[i] do
print(a[i])
i = i + 1
end

repeat-until

先执行一次循环体,再判断条件,如果条件为真则退出循环体,否则继续执行循环体。类似其它语言的 do-while 语句,循环体至少会执行一次

代码如下:
local a = 1
repeat
a = a + 1
b = a
print(b)
until b < 10

for 循环

for 循环语句有两种形式:数字型for(numeric for)、泛型for(generic for)

数字型 for 语法:

代码如下:
for start, end, step do
doing something
end

start 是开始值,end 是结束值,step是步长(可选,默认为1)

代码如下:
for a = 10, 0, -2 do
print(a)
end

泛型 for 循环通过一个迭代器(iterator)函数来遍历所有值:

代码如下:
tab = { key1 = "val1", key2 = "val2", "val3" }
for k, v in pairs(tab) do
if k == "key2" then
break
end
print(k .. " - " .. v)
end

break 和 return 语句用于跳出当前执行的块。

热心网友 时间:2022-04-26 02:50

由于Lua和C的真值定义不一样.
假设a,b是bool型的, 那么
if a and b then
statement1
else
statement2
end

如果a,b是整数,那么
if a~=0 and b~=0 then
statement1
else
statement2
end
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
流量保险是什么 会计的基本常识是什么 我奶奶这几天总是拉肚子,而且只能躺着一站起来眼睛就发黑,医生说她贫血... win7c盘里找不到users,用户里也没有c:usersadministrator... C盘里没有users文件夹 pvc天然气管能用多久 PVC天然气管的寿命是多久?  请教大神这怎么搞?天然气排烟管怎么弄? ...时不用在手机确认电脑登陆微信如何不用手机确认 急性胰腺炎护理 急性胰腺炎非手术治疗的护理措施 重生玄幻小说,猪脚重生前最强,没有之一,女主不要太多,帝霸就不要说了 三级贫困证明需要盖哪些章? 贫困证明需要谁盖章? 只要有蓝牙功能的手机就能连接蓝牙鼠标进行操作吗?我的手机是没有OTG功能的,是安卓系统。 小米安卓4.0 M1能连接蓝牙鼠标吗? 安卓手机怎么不用OTG就连接蓝牙鼠标 饺子皮怎么做成葱油饼? 饺子皮怎么做葱油饼 Win10 家庭版 Edge打不开提示无法使用内置管理员帐户打开该怎么办 家庭版的win10 总是出现无法用内置管理员打开应用怎么办 win10 家庭版本 无法使用内置管理员账户打开应用怎么办 顺治帝和董鄂妃的故事很感人,但他的命运是不是惨了点,难道皇帝就不能心爱的女人??? 17岁嫁给顺治帝,22岁就香消玉殒,董鄂妃为什么英年早逝? 顺治帝一生独宠董鄂妃,她有何魅力,能把顺治皇帝迷得神魂颠倒呢? 清朝黄帝顺治和董小宛的爱情故事是真的吗? 关于顺治皇帝和董鄂妃的故事的正史是怎么记载的 关于顺治帝与董鄂妃的故事?? 顺治与董鄂妃 顺治皇帝一生独爱董鄂妃,24岁就去世的他,为何能有14个子女? 让顺治魂牵梦萦一辈子的董鄂妃,凭借的到底是什么? 限时训练有什么优点? 求助,JAVA的类的方法 明年3月1号微信能不能在网上购买东西 传统的正则表达的| ,lua正则表达式用什么来代替? 黄芪,党参,当归,川芎,枸杞,炒白术,白茯苓,山药,炙首乌,陈皮,这些一起喝有什么功效会不会有副作用? 做梦梦到自己家有一块土地边挖一悄沟下雨吧土冲公胯了土冲跑了? 梦见一块田地旁边一个小沟,田地小沟都满满的水,好象往外流? 请问LUA的正则表达式怎么匹配字符? cad如何一键绘制门 lua 判断密码是不是6-12 位数字字母组合,不能为纯数字和纯字母 jz是什么牌子的寸衣车工在什么价格 JZ玖姿女装怎么样?消费人群大约是多少岁呢? 雪村冰箱有那些故障冰箱不制冷压缩机徵热照明灯跳劲 气球里面是什么气体如果没有气用什么吹 如何设置计算机用户权限,使其不能上网? 程序开发中逻辑结构需要用到的函数有哪些? G20峰会要首次在日本召开吗? G20峰会为什么19个国家 洗菜盆上装水龙头的口径是多少公分? 怎样在lua中定义c的结构体