我是靠谱客的博主 大力人生,最近开发中收集的这篇文章主要介绍【lua】赋值语句/循环/if/运算符/数组,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

赋值语句
–lua中是可以同时给多个变量赋值,变量列表和值列表的各个元素用逗号分开,
–赋值符号右边的值会依次赋值给左边的变量
a,b=b,a–交换两个变量的值
–给表赋值
tab={}
tab[“key”]=“value”
print(tab[“key”])
print(tab.key) – key是字符串类型的时候才可以直接tab.str
 
 
lua循环
while循环 :当condition为true的时候会重复执行循环体语句
–while(condition)
–do
–   循环体
–end

for循环
–1.数值型的for
–2.泛型的for
数值型的for
–for var=exp1,exp2,exp3 do
–   循环体
–end
–var从exp1变化到exp2,每次变化以exp3为步长进行递增,并执行一次循环体
–其中exp3是可选项,默认是1

泛型for
–泛型for循环是通过一个迭代器函数来遍历所有的值,其实类似于C#中的foreach
tab ={“oh”,[3]=“god”,“my”,[5]=“hello”,[6]=“world”}
for i,v in ipairs(tab) do
  print(i,v)
end
1 oh
2 my
3 god

for k,v in pairs(tab) do
  print(k,v)
end
1 oh
2 my
3 god
6 world
5 hello

pairs 和 ipairs 的区别
pairs:会遍历table中所有的键值对,也就是说pairs遇到nil还是可以继续遍历,ipairs遇到nil会中断
–ipairs:固定从key值1开始,每次key累加1进行遍历,如果key对应得value不存在,就停止遍历

repeat…until:先执行再判断
–repeat
–   循环体
–until(condition)

–循环控制语句 break [没有continue

模拟实现continue
for i=1,10 do
 repeat
   if i == 5 then
    print(“continue”)
    break
   end
   print(i,“loop”)
  until(true)
end
 
 
if语句
–if…elseif…else… 和switch一样
–if(布尔表达式1) then
–   执行体
–elseif(布尔表达式2) then
–   执行体
–else
–   执行体
–end
 
 
lua运算符
算术运算符 + - * / % - 注意 / 的结果可能是小数
print(3/2) --1.5
–要求整数:
print(math.modf(3/2)) – modf 返回两个值 整数部分 和 小数部分
关系运算符 == ~= < > <= >=
逻辑运算符 and or not
–a?b :c => a and b or c :当且仅当b为true才成立
–a and b :a为true返回b值 ,否则返回的是a值
–a or b:a为true的时候返回a值,否则是b值
a =3
b =4
print(a and b)–4
print(a or b)–3
c =nil
print(a and c or b)–4
print(a and b or c)–4
–其他运算符
–字符串连接符:. .
–计算字符串或者表的长度:#
a=4
b=3
print(a^b) --a的b次方

运算符的优先级(从高到低)
– ^
– not -(负号)
– * /
– + -(减号)
– …
– < > <= >= == ~=
– and
– or
– =
 
 
–lua数组
tab={“lua”,“user”}
for i=0,2 do
print(tab[i])
end --下标从1开始
多维数组 array[][] 一维数组的索引键对应得一个数组
array={}
for i=1,10 do
array[i]={}
for j=1,10 do
array[i][j]=i*j
end
end
–注意:数组设定了指定的索引值,就可以避免nil的产生,有利于节省内存空间

最后

以上就是大力人生为你收集整理的【lua】赋值语句/循环/if/运算符/数组的全部内容,希望文章能够帮你解决【lua】赋值语句/循环/if/运算符/数组所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(44)

评论列表共有 0 条评论

立即
投稿
返回
顶部