Lua 程序设计 table构造式

本文介绍了Lua语言中表格(table)的基本构造方法,包括创建空表格、初始化数组和记录,以及使用嵌套构造式来表示复杂的数据结构。同时展示了如何通过特殊语法来设置默认索引。

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

      构造式是用于创建和初始化table的表达式。是Lua中最通用、最有用的机制之一。

      最简单的构造式就是一个空构造式{},用于创建一个空table。构造式还可以用于初始化数组。

days = {"Sunday","Monday","Thuesday","Wednesday"}

       这里将days[1]初始化为字符串“Sunday”、days[2]初始化为“Monday”

        Lua还提供了一种特殊的语法初始化table记录:

a = {x = 10 ,y = 20}  等价于  a = {}  a.x = 10  a.y = 20

       创建table之后都可以再添加或删除其中的某些字段。构造式只是在table初始化时刻发挥作用。

       table创建链表代码:

list = nil
for line in io.lines () do
list = {next = list, value = line}
end

     也可以通过嵌套的构造式来表示复制的数据结构。Lua中的默认索引是从1开始的,若是真的需要以0开始可以通过这种方法:

days = {[0] = "Sunday","Monday","Thuesday","Wednesday"}

     现在第一个值“sunday”的索引就是0了。这个索引0不影响其他元素。“Monday”照常索引为1,后续其他值的索引依次递增。你也可以在最后一个元素后面写一个逗号,这个特性是可选的,也是合法。

     在Lua的构造式中还可以用分号代替逗号。通常会将分号用于分隔构造式中不同的成分。

{x = 10 ,y = 15; "one" , "two" , "three"}

 

转载于:https://my.oschina.net/u/223340/blog/289855

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值