Lua Table库

Lua表的功能十分强大,几乎能存储Lua中的所有数据类型。在Lua编程中经常会对表进行一些操作,Lua内建了一些操作表的函数,通过它们可以极大的提高编程效率。

一、getn

getn函数用于获取表的长度,等同于一元操作符#,其语法为:

1
table.gent(t)

我们来看如下代码:

1
2
3
4
5
6
7
8
9
10
11
12
13
local t = {1,2,3,4}
print(table.getn(t))
print(#t)
print()

local t = {1,2,nil,3,4}
print(table.getn(t))
print(#t)
print()

local t = {1,2,k='v',3,4}
print(table.getn(t))
print(#t)

其执行结果为:

1
2
3
4
5
6
7
8
4
4

5
5

4
4

可以看到getn函数只对普通值有效。

二、maxn

maxn函数用于获取表元素的最大索引号,其语法如下:

1
table.maxn(t)

我们来看如下代码:

1
2
3
4
5
6
7
8
9
10
11
12
13
local t = {1,2,3,4}
print(table.maxn(t))
print(#t)
print()

local t = {1,2,nil,3,4}
print(table.maxn(t))
print(#t)
print()

local t = {1,2,k='v',3,4}
print(table.maxn(t))
print(#t)

其执行结果为:

1
2
3
4
5
6
7
8
4
4

5
5

4
4

三、sort

sort函数用于对表元素进行排序,其语法为:

1
table.sort(t[, func])

我们来看如下代码:

1
2
3
4
5
6
7
8
9
10
11
12
13
local t = {4,3,2,1}
table.sort(t)
for k,v in pairs(t) do
print(k,v)
end
print()


local t = {4,3,a='a',b='b',aa='aa',ab='ab',2,1}
table.sort(t)
for k,v in pairs(t) do
print(k,v)
end

其执行结果为:

1
2
3
4
5
6
7
8
9
10
11
12
13
1	1
2 2
3 3
4 4

1 1
2 2
3 3
4 4
b b
ab ab
a a
aa aa

四、concat

concat函数用于将表元素连接成字符串

五、insert

insert函数用于向表中插入元素

六、remote

remote函数用于从表中删除元素


Lua Table库
https://kuberxy.github.io/2020/12/17/Lua Table库/
作者
Mr.x
发布于
2020年12月17日
许可协议