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,,,,,
end

2. 运算符

2.1  算术

+-*/^(加减乘除幂) -负数

2.2 比较

==等于 ~=不等于, 大于>,小雨<, 大于等于>=, 小于等于<=

2.3 逻辑运算

a and b : 如果a为false返回a 否则返回b,and的优先级比or高
a or b : 如果a为true返回a 否则返回b
a = a or b 如果a有值则返回a,如果a为nil则赋值为b 等价于条件判断
not : 非 结果只返回bool
三元操作(a and b) or c

2.4 连接运算
  连接符 .. (前后加空格)
  如果值为数字则将其转换为字符串

3. 基本数据类型

3.1 string 字符串

  ()单引号双引号
  ()多行字符串[[ 多行文字 ]]
  ()字符串不可以用+号拼接,使用 ..进行字符串拼接前后加空格
  ()可以自动转换数字和字符串: ""+/"10+1"/""+""
  ()"" == 为false可以使用tonumber/tostring相互转换数据类型
  ()字符串长度计算使用 #string

3.2 num 数字
  

包括整型
浮点型
指数型

3.3 转义符号

\n换行
\t制表符
\r回车后面字符不打印
\转义符

3.4 function 函数
  标准库包括string库、table库、I/O库、OS库、算术库、debug库

3.5 boolean 布尔

  true:0和空串
  false:false和nil

3.6 nil 空

表示没有赋值,系统会自动删除该变量

3.7 table表
  类似于字典结构

  table = {a,b,c} -->取值方式table[1]使用索引取从1开始
  table = {a="",b="",d=""}-->取值方式table.key
  当key-value和单个标识符混合储存时,单个标识符有索引,key-value无索引
  分隔符逗号 , 可以用分号 ; 代替,用来区分不同的元素

Lua语法基础(二)的更多相关文章

  1. Ruby语法基础(二)

    Ruby语法基础(二) 继续ruby的学习,这次主要把目光放到运算符,条件判断,循环,方法,以及其他ruby特有的基本概念上 运算符 算术运算符:+,-,/,%,**,值的注意的是,ruby中一切皆为 ...

  2. R语言语法基础二

    R语言语法基础二 重塑数据 增加行和列 # 创建向量 city = c("Tampa","Seattle","Hartford"," ...

  3. Lua语法基础(1)---简介、基本数据类型、表达式

    我觉得我已经陷入了一个坑内.因为,安装了Lua和SublimeText3编辑器之后,怎么使自己编写的lua代码在untiy内运行起来,是个我完全不了解的机制.先放一放吧.首先,来回顾一下Lua的语法基 ...

  4. Lua语法基础(2)--基本语法、函数

    上一篇编辑编辑着,发现,缩进出了问题.作为一个不是强迫症的人,实在是忍受不了同一级内容不同缩进方式的槽点,于是重开一篇吧.(万幸,这样的文章也只有我自己看.) 第四 基本语法 赋值语句,Lua可以对多 ...

  5. lua语法介绍(二)

    一.语法简要 在学习任何语法之前,我们都需要知道该门语言是怎样定义的,是怎样运行的,话说白了,就是到了人家的山头得唱人家山头的歌.下面介绍lua的语法 1.变量的定义 特点: 1.变量在使用前必须声明 ...

  6. lua语法 - 基础篇

    1. 注释 单行注释:--,类似于C++的// 多行注释:--[[ ... ]],类似于C++的/*...*/ 2. 语句 分隔符:分号或者空格,一般多行写一起,建议用分号 语句块:do ... en ...

  7. Lua语法基础(一)

    1. 注释 -- 单行注释 --[[ 多行注释 --]] 2. 运行方式     (1)交互式运行         命令行下 lua进入交互模式     (2)命令行运行         lua + ...

  8. Lua语法基础(3)--迭代器和泛型for

    迭代器和闭包 迭代器是一种支持指针类型的结构,它可以遍历集合的每一个元素.在Lua中我们常常使用函数来描述迭代器,每次调用该函数就返回集合的下一个元素. 迭代器需要保留上一次成功调用的状态和下一次成功 ...

  9. Lua脚本之语法基础快速入门

    要 1.基本数据类型 2.Lua中的常用语句结构以及函数 3.Lua中的常用语句结构介绍 4.Lua中的库函数 目录[-] 一.基本数据类型 二.Lua中的常用语句结构以及函数 1.Lua中的常用语句 ...

随机推荐

  1. FocusListener焦点监听器

    [FocusListener焦点监听器] public class Demo extends JFrame { public Demo(){ setDefaultCloseOperation(Wind ...

  2. mssql sqlserver text数据类型专题说明

    摘要: 下文分享text数据类型的简介及处理text数据类型所涉及的函数,如下所示: text 数据类型简介: mssql sqlserver 常用数据类型简介 mssql sqlserver tex ...

  3. SQLServer之创建分区视图

    分区视图定义 分区视图是通过对成员表使用 UNION ALL 所定义的视图,这些成员表的结构相同,但作为多个表分别存储在同一个 SQL Server实例中,或存储在称为联合数据库服务器的自主 SQL ...

  4. 高端内存映射之kmap_atomic固定映射--Linux内存管理(二十一)

    1 固定映射 1.1 数据结构 linux高端内存中的临时内存区为固定内存区的一部分, 对于固定内存在linux内核中有下面描述 x86 arm arm64 arch/x86/include/asm/ ...

  5. Canvas中的非零环绕

    先上图 当要填充图形时,必须区分开哪些部分是覆盖的,哪些是空的,根据绘制的方向可以判断出来 非零环绕规则:对于路径中指定范围区域,从该区域内部画一条足够长的线段,使此线段的完全落在路径范围之外. 非零 ...

  6. python 文件名的操作

    1.文件操作 open()文件句柄:获取文件的路径信息 open() 打开一个文件,获取文件句柄 read() 全部读出出文件中的内容 readline() 读取文件中逐一读取一行数据 readlin ...

  7. 日志学习系列(四)——NLog实例

    具体不想介绍了,新建一个解决方案 ,直接用NuGet安装就行了 具体项目代码可以在https://github.com/qiuxianhu/SimpleNLog下载

  8. Windows Service 学习系列(三)——循环引擎 ICycleEngine

    摘要:转载:https://www.cnblogs.com/zhuweisky/archive/2009/09/01/1557792.html#undefined 1.缘起: 有些系统需要每隔一段时间 ...

  9. centos下 telnet访问百度

    先在命令行输入以下命令: telnet www.baidu.com 80 点击确认之后出现如下界面 然后接着输入以下两行命令 GET /index.html HTTP/1.1 Host: www.ba ...

  10. Openssl x509命令

    一.简介 x509指令是一个功能很丰富的证书处理工具.可以用来显示证书的内容,转换其格式,给CSR签名等 二.语法 openssl x509 [-inform DER|PEM|NET] [-outfo ...