lua 快速了解

这篇博客介绍了Lua,一种免费的源代码软件,可用于商业目的。主要内容包括 Lua 的基本语法,如表(table)的概念——可以视为键值对、字典或数组,数组的索引从1开始,并且通过table系统方法进行操作。此外,还涉及了对象和继承的基础知识。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

lua 快速了解

介绍

Lua is free software distributed in source code. It may be used for any purpose, including commercial purposes, at absolutely no cost.
Lua是以源代码形式发布的自由软件。它可以用于任何目的,包括商业目的,绝对免费。
源码 基于标准C 使用make 编译安装,

本地使用版本 5.4.2
帮助文档

基本语法举例

--- 注释
---  全局变量
run = 100
--- 局部变量
local age = 30
print(run)
print(age)

--- 方法体
function SayHello(content)
    print(content)
end
--- 调用
SayHello("lua")
--- if条件
function Max(a, b)
    if a > b then
        return a
    else
        return b
    end
end

print(Max(3,4))
--- for 循环
for i=1, 10 do
    print(i)
end

基础内容

表table

个人理解 键值对、字典、数组

Config = {}
Config.age = 30
Config.class = "Lua"
Config["name"] = "ilua"

LocalConfig = {hello = "hello ", world="world"}

for key, value in pairs(Config) do
    print(key, value)
end

数组

索引从1开始

数组 定义形式 同表
使用系统方法table 来进行数组的相关操作

--- 定义数组
--- Age =  {}
Age = {1,2,3,4}
print(Age)
--- 循环读取数字变量 以及索引, 
-- for key,value in pairs(Age) do
--     print(key, value)
-- end
--- 插入数据
for var=1, 10 do
    table.insert(Age, 5, var)
end
for key,value in pairs(Age) do
    print(key, value)
end
--- 计算长度
print(table.maxn(Age))

对象 继承

function NewPeople(tab)
    local ins = {}
    for key, value in pairs(tab) do
        ins[key] = value
    end
    return ins
end

People = {}
-- 构造函数
People.New = function (name)
    local self = NewPeople(People)
    self.name = name
    return self
    
end

function People.sayHello(self, content)
    print(self.name.." say: "..content)
end

-- local p = NewPeople(People)
-- p.sayHello("你好")

local cc = People.New("张三")

--- 执行
cc:sayHello("你好")


function Copy(dist, tab)
    for key, value in pairs(tab) do
        dist[key] = value
    end
end

-- man 继承 people
Man = {}

Man.sayHi = function (self)
    print(self.name.."man say hi")
end

Man.New = function (name)
    local self = People.New(name)
    Copy(self, Man) -- 在本次实例中将父类self的属性中附加MAN 自身的属性
    return self
end

m = Man.New("liff")
m:sayHello("是你")
m:sayHi()
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值