Lua5.1 table库

来源:互联网 发布:单词卡片制作软件 编辑:程序博客网 时间:2024/05/22 15:49

1、table.concat 

table.concat(table, sep, i, j)

给定一个数组,其中的所有元素都是字符串或数字,返回表 table[i]..sep..table[i+1]...sep..table[j].

 sep 的默认值Shiite空字符串,  i 默认是 1, j 默认是表的长度.如果i大于j, 返回空串.

参数

  • # table : 需要处理的表.

  • #字符串 sep : 分割符, 默认值为空字符串.

  • #数字 i : 开始索引, 默认值是 1.

  • #数字 j : 结束索引,默认为表的长度.

2、table.insert

table.insert(table, pos, value)

在表中pos位置插入元素的值, 其他元素向后移,如果有的话.

pos 默认值是 n+1, 其中n是表的长度, 所以l table.insert(t,x) 是将x插到表 t的最后.

参数

  • # table : 待修改的表.

  • #数值 pos : 插入的位置.

  • value : 要插入的值.

3、table.maxn

table.maxn(table)

返回指定table中所有正数key值中最大的key值. 如果不存在key值为正数的元素, 则返回0. 此函数不限于table的数组部分.

(To do its job this function does a linear traversal of the whole table.)

参数

  • # table : table to traverse.

返回值

#数值: 返回指定table中所有正数key值中最大的key值. 如果不存在key值为正数的元素, 则返回0.

4、table.remove

table.remove(table, pos)

移除表中pos位置的元素, 如果pos后面还有元素,把它们向前移。.

返回被删除元素的值. pos的默认值是表的长度, 所以 table.remove(t) 是移除表的最后一个元素.

Parameters

  • # table : 待修改的表.

  • #数字 pos : 要删出的位置. (默认为表的长度)

5、table.sort

table.sort(table, comp)

按给定的顺序排序表元素, in-place, 从 table[1] 到 table[n], n是表的长度.

如果comp给定,那么它必须是接收两个表元素的函数, 而且当第一个元素小于第二个时返回真 (所以 not comp(a[i+1],a[i]) 在排序后为真). Lua 操作符 < 被代替.

该排序算法是不稳定的;也就是说,由给定的顺序被认为是相等的元素可能通过排序改变了他们的相对位置。

Parameters

  • #table table : 需要排序的表.

  • comp :一个可选的参数, 此参数是一个外部函数, 可以用来自定义sort函数的排序标准.

    此函数应满足以下条件: 接受两个参数(依次为a, b), 并返回一个布尔型的值, 当a应该排在b前面时, 返回true, 反之返回false

    .

0 0