Lua 语言基础教程

本项目提供Lua编程语言的基础语法示例和教程,帮助初学者快速掌握Lua的核心概念。

Lua 基础语法详解

1. 注释

Lua支持两种注释方式:单行注释和多行注释。

lua 复制代码
-- 这是单行注释

--[[
  这是多行注释
  可以包含多行文本
]]--

2. 变量声明

Lua中的变量默认是全局的,使用local关键字可以声明局部变量。

lua 复制代码
-- 全局变量(默认)
globalVar = "这是全局变量"

-- 局部变量
local localVar = "这是局部变量"

-- nil - 无效值(类似于 null)
local nilValue = nil

3. 数据类型

Lua是动态类型语言,主要支持以下基本数据类型:

3.1 字符串
lua 复制代码
-- 字符串
local str1 = "双引号字符串"
local str2 = '单引号字符串'
local str3 = [[多行字符串
可以包含换行
不需要转义]]
print("字符串:", str1, str2)
print("多行字符串:", str3)
3.2 数字

Lua只有一种数值类型,可以表示整数、浮点数和十六进制数。

lua 复制代码
-- 数字(Lua 只有一种数字类型)
local num1 = 42      -- 整数
local num2 = 3.14    -- 浮点数
local num3 = 0xFF    -- 十六进制
print("数字:", num1, num2, num3)
3.3 布尔值
lua 复制代码
-- 布尔值
local bool1 = true
local bool2 = false
print("布尔值:", bool1, bool2)

4. 控制结构

4.1 条件语句(if-elseif-else)
lua 复制代码
-- if 语句
local age = 20
if age < 18 then
    print("未成年")
elseif age >= 18 and age < 60 then
    print("成年")
else
    print("老年")
end
4.2 循环结构
4.2.1 while 循环
lua 复制代码
-- while 循环
local count = 1
while count <= 5 do
    print("while 循环:", count)
    count = count + 1
end
4.2.2 for 循环
lua 复制代码
-- for 循环(数值循环)
print("\nfor 数值循环:")
for i = 1, 5 do
    print("循环次数:", i)
end

-- 带步长的 for 循环
print("\n带步长的 for 循环:")
for i = 10, 1, -2 do
    print("递减步长:", i)
end
4.2.3 repeat-until 循环
lua 复制代码
-- repeat-until 循环(相当于 do-while)
local num = 1
print("\nrepeat-until 循环:")
repeat
    print("num = ", num)
    num = num + 1
until num > 3

5. 运算符

5.1 算术运算符
lua 复制代码
-- 算术运算符
local a, b = 10, 3
print("算术运算:")
print("a + b = ", a + b)
print("a - b = ", a - b)
print("a * b = ", a * b)
print("a / b = ", a / b)  -- 除法返回浮点数
print("a % b = ", a % b)  -- 取模
print("a ^ b = ", a ^ b)  -- 幂运算
5.2 关系运算符
lua 复制代码
-- 关系运算符
print("\n关系运算:")
print("a == b: ", a == b)
print("a ~= b: ", a ~= b)  -- 不等于
print("a > b:  ", a > b)
print("a < b:  ", a < b)
print("a >= b: ", a >= b)
print("a <= b: ", a <= b)
5.3 逻辑运算符
lua 复制代码
-- 逻辑运算符
print("\n逻辑运算:")
print("true and false: ", true and false)
print("true or false:  ", true or false)
print("not true:       ", not true)
5.4 字符串连接运算符
lua 复制代码
-- 字符串连接
local firstName = "张"
local lastName = "三"
local fullName = firstName .. lastName  -- 使用 .. 连接字符串
print("\n字符串连接:", fullName)
5.5 长度运算符
lua 复制代码
-- 长度运算符 #
local testString = "Hello Lua"
print("\n字符串长度:", #testString)

6. 基本输出

lua 复制代码
-- 使用 print 函数输出信息
print("\n===== 示例结束 =====")

-- 可以输出多个值
print("多个值输出:", 1, 2, "Hello")

学习资源

相关推荐
灰子学技术8 小时前
go response.Body.close()导致连接异常处理
开发语言·后端·golang
二十雨辰8 小时前
[python]-AI大模型
开发语言·人工智能·python
Yvonne爱编码9 小时前
JAVA数据结构 DAY6-栈和队列
java·开发语言·数据结构·python
Re.不晚9 小时前
JAVA进阶之路——无奖问答挑战1
java·开发语言
你这个代码我看不懂9 小时前
@ConditionalOnProperty不直接使用松绑定规则
java·开发语言
pas1369 小时前
41-parse的实现原理&有限状态机
开发语言·前端·javascript
琹箐9 小时前
最大堆和最小堆 实现思路
java·开发语言·算法
Monly2110 小时前
Java:修改打包配置文件
java·开发语言
我命由我1234510 小时前
Android 广播 - 静态注册与动态注册对广播接收器实例创建的影响
android·java·开发语言·java-ee·android studio·android-studio·android runtime
island131410 小时前
CANN ops-nn 算子库深度解析:核心算子(如激活函数、归一化)的数值精度控制与内存高效实现
开发语言·人工智能·神经网络