L1[循环]01. for循环结构介绍

只是简单的说了下计数型的for循环结构

for i=1,10,1 do

testlib.traceprint(i)

end

注意几点:

1.上面的1和10表示循环从1开始计数 到达10还在计数  超出10才会不循环 步长1

2 i这个变量是for循环内部的一个局部变量 离开了循环结构就失效了 而且 这个局部变量是非常特殊的  在for结构内我们人工修改这个i这个特殊的局部变量只能作用很小的范围

for  i=1,10,1 do
testlib.traceprint(i) --这里依然按照for结构的顺序从1到10 没有受到下面i=999的任何影响 i=999--这里修改了i的默认的顺序的数值变为999
testlib.traceprint(i) --这里输出了999表示我们修改成功了
end

123

L1[循环]02. 嵌套for循环

只是说了循环嵌套 没什么说的 不过还是要说一下 for结构的特殊变量i 就算循环嵌套 都用同一个i这个变量名  也不会相互干扰

for  i=1,10,1 do--两个循环的i没有相互冲突
testlib.traceprint("外循环的:" .. i)
for i=1,10,1 do--两个循环的i没有相互冲突
testlib.traceprint("==内循环的:" .. i)
end
end

L1[循环]03. goto注意事项

goto和标签配置的几个注意事项

1.goto和要跳到的标签 不能跨函数存在  就是说  goto和对应标签 要不都在同一个函数内 要不都在主代码里面  不能随便乱放

2 goto能起作用的范围一定是被标签起作用的范围包含覆盖 或者相等或者标签起作用的范围包含了goto能起作用的范围

3 goto和标签之间 不能包含声明变量 语句  养成一个 变量声明都放到函数开头 或者源代码开头的习惯 就不会遇到这个问题了

小知识:lua内没有continue这个函数  有的时候我们需要实现这个功能 如何实现呢 百度了下找到了大神写的代码

for i = 1, 10 do
repeat--这个repeat因为结束条件是true 所以必定指定也必定执行一次
if i == 5 then--这里是判断跳出这次循环的条件
break
end
print(i)--这里写循环主代码
until true
end

L1[循环]04. 累加计数

没什么可说的

L1[循环]05. while与repeat循环

local i=0

while (i<10) do  --先判断后运行循环主体 如果条件不满足就跳出循环
     print(i)
     i=i+1

end

local i=0

repeat
     print(i)
     i=i+1

until(i>=10)--先运行主体再判断 而且如果满足条件就跳出循环 注意上面那个是条件不满足则跳出 这个是满足条件才跳出

L1[循环]06. 四种循环写法区别

[lua]紫猫lua教程-命令宝典-L1-01-06. 循环结构的更多相关文章

  1. [lua]紫猫lua教程-命令宝典-L1-01-03. 数值数据

    lua5.3在线手册地址  https://cloudwu.github.io/lua53doc/contents.html#contents 其实我们直接啃手册就够了 推荐如果有基础的先啃手册再看紫 ...

  2. [lua]紫猫lua教程-命令宝典-L1-01-02. 变量

    L1[变量]01. 变量命名规则 命名规则:数字字母下划线构成 但是不能数字开头 不推荐中文名 很多都是不支持中文 但是在一些其他的编辑器里面 比如触摸精灵 之类的 就可以 注意 :变量命名必须要包含 ...

  3. [lua]紫猫lua教程-命令宝典-L1-01-01. Lua环境与IDE

    网上大把的lua教程  不过紫猫老师的教程向来都是讲的非常仔细 所以最近天气已经36+了 魔兽世界还需要冲飞行声望  懒得写单子根本没有单子,正好认认真真的看下紫猫老师的lua教程 紫猫老师的lua教 ...

  4. [lua]紫猫lua教程-命令宝典-L1-01-04. 字符串数据

    L1[字符串]01. 单引号与双引号 没什么说得 字符串:以双引号包含 或者单引号包含 或者[[]]包含 L1[字符串]02. 长文本内容 小知识:如果用[[]]包含字符串内容 但是字符串内容里面 包 ...

  5. [lua]紫猫lua教程-命令宝典-L1-01-10. 自定义函数

    L1[function]01. 定义与调用函数 函数的定义 和概念 没什么可说的 lua的函数声明和调用是有先后顺序的  先声明后调用 函数就是变量的一种 所以可以自由的把函数在变量间相互赋值 不过注 ...

  6. [lua]紫猫lua教程-命令宝典-L1-01-07. table表

    L1[table]01. table表的定义与赋值 小知识:声明表的例子 xx={}--创建一个空表xx --给这表的元素赋值 test="a" xx[test]="a& ...

  7. [lua]紫猫lua教程-命令宝典-L1-01-05. if判断结构

    L1[if]01. 简单的if判断结构 没什么说得 if得基本结构如下 xxx= ) then testlib.traceprint("1-100") ) then testlib ...

  8. [lua]紫猫lua教程-命令宝典-L1-03-01. 闭包

    L1[闭包]01. 函数的传递赋值 没什么说的 1.函数作为变量来看 可以轻松的声明 相互赋值 2.函数变量本质是 一个内存指针 所以函数变量的相互赋值不是传递的函数本身 而是指向这个函数的内存地址 ...

  9. [lua]紫猫lua教程-命令宝典-L1-01-09. string字符串函数库

    L1[string]01. ASCII码互转 小知识:字符串处理的几个共同的几点 1.字符串处理函数 字符串索引可以为负数 表示从字符串末尾开始算起 所有字符串处理函数的 字符串索引参数都使用 2.所 ...

随机推荐

  1. 菜不成声 的 ac自动机 刷题记录

    HDU2222 Keywords Search 模板题.数组开小了结果会T... 代码 #include <bits/stdc++.h> #define nmax 10010 using ...

  2. render(七)

    Vue 的 _render 方法是实例的一个私有方法,它用来把实例渲染成一个虚拟 Node.它的定义在 src/core/instance/render.js 文件中: Vue.prototype._ ...

  3. 数字输出精度 - C语言

    1. 浮点型/双精度浮点型 double a=1234.5678; printf("%8.2lf\n",a);// 小数点前的数表示总位数,小数点也算一位 printf(" ...

  4. vue学习指南:第十四篇(详细) - Vue的 路由 第四篇 ( 路由的导航守卫 )

    导航守卫 一.全局导航守卫 1. 全局导航守卫,把方法给 router,只要路由发生改变跳转都会触发这个函数 2. 每个路由 都有一个 meta 3. 全局导航守卫分两种: 1. 全局前置导航守卫:路 ...

  5. Qt中实现点击一个label,跳转到打开一个浏览器链接

    配置模块 首先需要在.pro配置文件中添加QT += network 重写自定义Label .h文件 class MyClickLabel : public QLabel { Q_OBJECT pub ...

  6. R data formats

    R data formats: Rdata Rda Rds 1.概念 rds是R语言中利用二进制保存的源文件,加载readr包以后,使用write_rds(x,file='x.rds')保存文件,re ...

  7. BibTex 学习笔记

    BibTex 学习笔记 使用BibTex 来管理参考文献:一次管理,终身使用! 1. 定义 BibTeX 是一个使用数据库的的方式来管理参考文献程序, 用于协调LaTeX的参考文献处理. BibTeX ...

  8. 谷歌浏览器安装apizza

    接口测试是卡发中不可缺少的一环,那么常用的postman是英文就很不方便一些小伙伴的使用,所以此工具和postman功能相同且升级并且是中文模式 安装: 链接:https://pan.baidu.co ...

  9. Python入门5 —— 基本运算符

    1.算数运算符('+'.'-'.'*'.'/'.'//'.'%'.'**') print(10 + 3) -- 输出:13 print(10 - 3) -- 输出:7 print(10 * 3) -- ...

  10. Codeforces Round #603 (Div. 2) C.Everyone is A Winner!

    tag里有二分,非常的神奇,我用暴力做的,等下去看看二分的题解 但是那个数组的大小是我瞎开的,但是居然没有问题233 #include <cstdio> #include <cmat ...