Lua语法基础(3)--迭代器和泛型for】的更多相关文章

迭代器和闭包 迭代器是一种支持指针类型的结构,它可以遍历集合的每一个元素.在Lua中我们常常使用函数来描述迭代器,每次调用该函数就返回集合的下一个元素. 迭代器需要保留上一次成功调用的状态和下一次成功调用的状态,也就是他知道来自于哪里和将要前往哪里.闭包提供的机制可以很容易实现这个任务.记住:闭包是一个内部函数,它可以访问一个或者多个外部函数的外部局部变量.每次闭包的成功调用后这些外部局部变量都保存他们的值(状态).当然如果要创建一个闭包必须要创建其外部局部变量.所以一个典型的闭包的结构包含两个…
我觉得我已经陷入了一个坑内.因为,安装了Lua和SublimeText3编辑器之后,怎么使自己编写的lua代码在untiy内运行起来,是个我完全不了解的机制.先放一放吧.首先,来回顾一下Lua的语法基础. 第一 起点 在Lua中具有一个Chunks的概念.Chunk是一系列语句,Lua执行的每一块语句,比如一个文件或者交互模式下的每一行都是一个Chunk.一个代码块,可以是一个语句,一系列语句的组合,或者一个函数. 注意,在交互模式下,Lua通常把每一个行当作一个Chunk,但如果Lua一行不是…
1. 注释 -- 单行注释 --[[ 多行注释 --]] 2. 运行方式     (1)交互式运行         命令行下 lua进入交互模式     (2)命令行运行         lua +  -e + "代码块" 直接运行              -l 加载文件              -i 进入交互模式 3. 赋值语句 -- 交换两个变量值 a, b = b, a -- 多个变量赋值 a,b,c = ,, --按照等号后面的数值位置赋值,如果缺少或者多与参数则赋值为ni…
上一篇编辑编辑着,发现,缩进出了问题.作为一个不是强迫症的人,实在是忍受不了同一级内容不同缩进方式的槽点,于是重开一篇吧.(万幸,这样的文章也只有我自己看.) 第四 基本语法 赋值语句,Lua可以对多个变量同时赋值,变量列表和值列表的各个元素用逗号分开,赋值语句右边的值会依次赋给左边的变量. a, b = , *x <--> a=; b=*x 遇到赋值语句Lua会先计算右边所有的值然后再执行赋值操作,所以我们可以这样进行交换变量的值: x, y = y, x -- swap 'x' for '…
1. 注释 单行注释:--,类似于C++的// 多行注释:--[[ ... ]],类似于C++的/*...*/ 2. 语句 分隔符:分号或者空格,一般多行写一起,建议用分号 语句块:do ... end 赋值语句: a, b, c, d = 1, 2, 3, 4 -- global variables   local a, b, c = 1, 2, 3 -- local varialbes a, b = b, a -- swap data 赋值运算:+.-.* .^(乘方)  -- 2^3=8.…
一.泛型(Generic)在集合中的使用 1.作用 (1)解决元素存储的安全问题 (2)解决获取数据元素时,需要类型强转的问题 2.代码案例 //在集合没有使用泛型的情况下 List list = new ArrayList(); //list用来存放成绩 list.add(); list.add(); list.add(); //在没有使用泛型时,任何Object及其子类都可以添加进来,不安全 list.add(new String("AA")); ; i < list.siz…
###############    迭代器    ############## """ 迭代器 这是一个新的知识点 我们学习过的可以迭代的对象有哪些? list str dict 元组 文件 集合 range() enumerate 为什么可以被循环? """ print(dir([])) # dir可以查看这个数据类型所有的方法 """ ['__add__', '__class__', '__contains__…
1. 函数 1.1 函数声明 默认为全局 局部函数使用local关键字声明 1.2 参数 ...等同于Python中*args三个点表示可变参数 1.3 获取参数长度的两种方式 (1)将传入的参数... 直接写入新的table中 使用#table获得长度 (2)直接使用select("#",...)获取长度 1.4 函数定义格式 : [local] function function_name(...) function_body return result1, result,,,,,…
要 1.基本数据类型 2.Lua中的常用语句结构以及函数 3.Lua中的常用语句结构介绍 4.Lua中的库函数 目录[-] 一.基本数据类型 二.Lua中的常用语句结构以及函数 1.Lua中的常用语句结构介绍 三.Lua中的库函数 Lua的语法基础超级简单,非常易于上手,下面总结一些学习过程中的Lua语法基础: 在开始学习之前,先介绍一些最基本的概念,在Lua中具有一个代码块的概念,每个函数或者for循环等都是一个代码块.在Lua中,用 “- - ”来标记该行的注释,使用“- - [ [” 和…
1. 迭代器 2. 泛型for语义 所谓迭代器就是一种可以遍历一种集合中所有元素的机制.在lua中,迭代器通常表示为函数,每调用依次函数就返回集合中的下一个元素.泛型for 内部保存了迭代器函数 实际保存了3个值:1个迭代器函数,一个恒定状态(invariant state)和一个控制变量(control variable),泛型for语法如下: for <var-list> in <exp-list> do <body> end 简单的例子ipairs() tb={,…