lua_table 学习

lua  table ()

 

Table 的常用操作

 

local fruits = {aaa,bbb,ccc,ddd,eee,fff,ggg}

 

  1. table.concat(连接)

 

table.concat(fruits,:,x,y);

用于连接fruits表中的第x到第y个元素每个元素间用“:”隔开,xy默认为首尾,“”默认为空;

 

  1. table.insert(插入)

 

table.insert(fruits,x,hhh);

在表中的第x个位置前插入元素”hhh”,x默认为#fruits + 1

 

  1. table.remove(删除)

 

table.remove(fruits,x,);

咋删除表中的第x个元素,后面元素前移,x默认为#fruits

 

  1. table.move (拷贝)

 

table.move(fruits,f,e,t,fruits2);

将表1中的第f到第e个元素复制到表二的第t个元素之后,f必须为正数

 

  1. table.sort(排序)

 

Table.sort(fruitscomp);

将表内元素按指定次序排序,如果提供comp,它必须是一个可以接受两个表内元素为参数的函数(当第一个元素序言排在第二个元素之前时返回真),默认将使用lua操作”<”作为替代品。

 

 

 

 

 

 metatable(元表)

 

 

元表用来改变table的行为;

例如我们试图用”+”来操作两个表时,首先检查两个表是否有元表,然后检查两个表中是否有”__add”字段,若找到,就调用对应的值,此时,”__add”为等时字段,其对应的值(一个functiontable)就是“元方法”。

 

·Setmetatabletablemetatble); -- 设置metatabletable的元表;

 

·getmetatabletable)返回table的元表;

·__index 元方法 在通过建访问时使用参数为表和键值;

·__newindex 元方法 用来对表更新;

·__tostring 元方法 用来改变表的输出行为,改变的是printtable)的结果;

 

元表对用的操作符

 

 

·

转载于:https://www.cnblogs.com/kpxy/p/10020222.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值