local"关键字。例如:
```lua
local x = 10
```
.表
在Lua中,表是一种非常重要的数据结构,它相当于其他语言中的数组、哈希表或者对象。表可以用来存储任意类型的值,包括其他表。创建一个表就像这样:
```lua
myTable = {key1 = "value1", key2 = 2, [3] = "value3"}
```
表的索引可以是数字或字符串,甚至可以是其他表。表的长度可以通过`#`运算符获取,但这只适用于数字键连续且从1开始的表。
.函数
Lua中的函数是一等公民,也就是说,函数可以像其他变量一样被赋值、作为参数传递和作为返回值。定义一个函数如下:
```lua
function myFunction(param1, param2)
-- 函数体
end
```
调用函数:
```lua
myFunction("hello", 123)
```
.元表和元方法
Lua允许你为表定义元表,元表包含了表的一些元操作的处理方式,例如索引和新值的设置。元表通过`__index`和`__newindex`等元方法来控制对表的操作。例如:
```lua
metatable = {}
metatable.__index = function(table, key)
return "Key not found"
end
myTable = setmetatable({}, metatable)
print(myTable.nonExistentKey) -- 输出 "Key not found"
```
.模块和包
Lua支持模块化编程,你可以通过`require`函数来加载和使用模块。模块通常包含函数和变量,它们可以被导出以便在其他地方使用。包管理器负责处理模块的加载和查找。
.错误处理
Lua提供了一个`pcall`函数来捕获和处理运行时错误。`pcall`接收一个函数和任意数量的参数,尝试在保护模式下执行这个函数。如果函数执行成功,`pcall`会返回`true`和函数的返回值,否则返回`false`和错误消息。
以上只是Lua语言基础的简单概述,更深入的学习还需要实践和查阅更多文档。Lua因其轻量级、高效和灵活的特性,在游戏开发、服务器脚本、配置文件等领域有着广泛的应用。继续探索Lua,你会发现它的强大和乐趣。