lua学习小结之lua循环
来源:互联网 发布:吴昕的淘宝店叫什么 编辑:程序博客网 时间:2024/05/17 02:16
Lua 循环
Lua语言是用标准C语言编写并以源代码形式开放, 其设计目的是为了嵌入应用程序中,从而为应用程序提供灵活的扩展和定制功能。所以Lua语言的循环和其他语言很相似。
一、for循环:
可以重复执行指定语句,重复次数可在for语句中控制。
Lua中for语句跟其他语言的for类似,但是语法上有一点点区别。for循环语句在Lua语言中可分为两类:数值for循环和泛型for循环。
1.数值for循环
语法格式:
var从exp1变化到exp2,每次变化以exp3为步长递增var,并执行一次"执行体"。exp3是可选的,如果不指定,默认为1。
for的三个表达式在循环开始前一次性求值,以后不再进行求值
2.泛型for循环
泛型for循环通过一个迭代器函数来遍历所有值,类似java中的foreach语句。
语法格式:
二、while循环:
在条件为true时,让程序重复地执行某些语句。执行语句前会先检查条件是否为true。
语法格式:
三、repeat...until循环:
重复执行循环,直到指定的语句为true时停止。
repeat...until循环语句不同于for和while循环,for和while循环的条件语句在当前循环执行开始时判断,而repeat...until循环的条件语句在当前循环结束后判断。repeat...until 循环类似于while循环,不同的是do ... while循环是保证至少执行一次。
流程图如下图所示:
注意的是,条件表达式出现在循环结束,所以在循环语句(S)执行一次之前的条件进行测试。
四、嵌套循环:
可以在循环内嵌套一个或者多个循环语句(while do...end;for...do...end;repeat...until)
五、循环控制语句:
break语句(退出当前循环或语句,并开始脚本执行紧接着的语句)。
六、无线循环语句:
在循环体中如果语句永远为true,那么循环体就会一直执行下去。
以while为例:
循环结构是在一定条件下反复执行某段程序的流程结构,被反复执行的程序被称为循环体。
循环语句是由循环体及循环的终止条件两部分组成的。如图:
一、for循环:
可以重复执行指定语句,重复次数可在for语句中控制。
Lua中for语句跟其他语言的for类似,但是语法上有一点点区别。for循环语句在Lua语言中可分为两类:数值for循环和泛型for循环。
1.数值for循环
语法格式:
for var=exp1,exp2,exp3 do <执行体> end
for的三个表达式在循环开始前一次性求值,以后不再进行求值
2.泛型for循环
泛型for循环通过一个迭代器函数来遍历所有值,类似java中的foreach语句。
语法格式:
--打印数组a的所有值 for i,v in iparrs(a) do print(v) end
在lua中pairs与ipairs两个迭代器的用法相近,但有一点是不一样的:
pairs可以遍历表中所有的key,并且除了迭代器本身以及遍历表本身还可以返回nil;但是ipairs则不能返回nil,只能返回数字0,如果遇到nil则退出。它只能遍历到表中出现的第一个不是整数的key。
例如:
Key = {1,2,3,4,nil,5,6,7,"d"} for i,v in ipairs(Key) do print(i,v) end
输出结果为:
1 1 2 2 3 3 4 4
遇到 nil 的时候直接跳出循环。
二、while循环:
在条件为true时,让程序重复地执行某些语句。执行语句前会先检查条件是否为true。
语法格式:
while(condition) #条件语句,当condition为true时执行循环体语句 do statements #循环体语句,可以是一条或多条语句 end
三、repeat...until循环:
重复执行循环,直到指定的语句为true时停止。
repeat...until循环语句不同于for和while循环,for和while循环的条件语句在当前循环执行开始时判断,而repeat...until循环的条件语句在当前循环结束后判断。repeat...until 循环类似于while循环,不同的是do ... while循环是保证至少执行一次。
流程图如下图所示:
语法格式:
repeat statement(s)until(condition) #如果条件为false,循环重新开始执行,直到condition为true时停止循环
注意的是,条件表达式出现在循环结束,所以在循环语句(S)执行一次之前的条件进行测试。
四、嵌套循环:
可以在循环内嵌套一个或者多个循环语句(while do...end;for...do...end;repeat...until)
五、循环控制语句:
break语句(退出当前循环或语句,并开始脚本执行紧接着的语句)。
六、无线循环语句:
在循环体中如果语句永远为true,那么循环体就会一直执行下去。
以while为例:
while(true) do print("循环将永远执行下去") end
参考出自: http://www.runoob.com/lua/lua-loops.html
阅读全文
0 0
- lua学习小结之lua循环
- Lua学习笔记之循环语句
- lua 学习小结
- Lua 循环学习
- Lua之循环
- lua学习之--liu.lua
- Lua学习笔记5-循环
- lua 之for循环 疑问。
- Cocos2d-Lua之循环语句
- lua小结
- lua小结
- lua-循环
- Lua循环
- Lua 循环
- Lua 循环
- LUA学习之编译
- Lua学习之function
- lua之OO学习
- android上ps/grep/kill组合杀死mediaserver
- Linux 多线程/进程同步
- 给图片加阴影加文字 和阴影背景图
- maven的使用---初级
- django ModelForm修改显示缩略图 imagefield类型
- lua学习小结之lua循环
- python+selenium环境搭建(包括常用类库、工具安装及资源下载地址)
- [数据结构]线索二叉树
- 西游记主要人物事件思维导图概括
- React 初学
- WebView点击里面的按钮跳转到Activity
- git 创建分支命令行
- 目前看到的针对依赖注入和控制反转解释,最通俗最浅显易懂的帖子+demo
- 支付宝支付和微信支付异步回调一直调用