Skip to content

Lua 基本语法

变量类型

类型说明示例
nil表示一个无效值。
当打印一个没有被赋值的变量时,便会输出一个nil值。
nil
boolean布尔值,只有两个可选值:true和false。true
false
number数字,包括整型、浮点型。1
-5
3.1415
string字符串。一对双引号或单引号之间的字符。"abc"
'abc'
function自定义函数。print
table表。用{}表示。默认索引从1开始。{1, 2, 3}

函数

函数定义

语法定义:

lua
function MyFunc(param)
    -- Do something
end

示例:

  • 自定义加函数

    function add(a,b)
    	return a+b
    end
  • 函数调用

    sum = add(3,4)

多返回值

Lua 函数可以无返回值,也可以有一个或多个返回值。

示例:

  • 自定义多返回值

    lua
    function add(a,b)
        return a,b,(a+b)
    end
  • 函数调用

    lua
    x,y,z = add(a,b)

条件语句

if 语句

语法格式:

lua
if(布尔表达式)
then
   --[ 在布尔表达式为 true 时执行的语句 --]
end

if..else 语句

语法格式:

lua
if(布尔表达式)
then
   --[ 布尔表达式为 true 时执行该语句块 --]
else
   --[ 布尔表达式为 false 时执行该语句块 --]
end

循环语句

while 循环

语法格式:

lua
while(condition)
do
   statements
end

for 循环

  1. 数值for循环

    语法格式:

    lua
    for var=exp1,exp2,exp3 do  
        <执行体>  
    end
  2. 泛型for循环

    语法格式:

    lua
    --打印数组a的所有值  
    number = {"one", "two", "three"}
    for i, num in ipairs(number) do
        print(i, num)
    end

    i是数组索引值,num是对应索引的数组元素值。

    ipairs是Lua提供的一个迭代器函数,用来迭代数组。

repeat...until

语法格式:

lua
repeat
   statements
until( condition )

参考资料

LUA语法教程:https://www.runoob.com/lua/lua-tutorial.html