lua陣列表格處理(table庫用法)
阿新 • • 發佈:2019-01-29
原文地址http://www.freecls.com/a/2712/10
table庫由一些基本函式組成來以陣列的形式(也就是隻能處理數字下標的元素)處理表格包括插入移除排序連線所有元素為字串
table.insert (table, [pos,] value)
插入資料,pos為插入的位置,省略pos預設從表格最後插入
例子
local res,t
t = {'freecls'}
--{'freecls','com'}
table.insert(t,'com')
--{'www','freecls','com'}
table.insert(t,1,'www')
table.remove (table [, pos])
從pos處移除資料,預設移除最後一個
例子
local res,t
t = {'111','www','freecls','com','222',name='freecls'}
--{'111','www','freecls','com',name='freecls'}
table.remove(t)
--{'www','freecls','com',name='freecls'}
table.remove(t,1)
table.concat (table [, sep [, i [, j]]])
把陣列連線成字串連線符為sep(預設為空字元)
例子
local res,t,s t = {'www','freecls','com'} --wwwfreeclscom local s = table.concat(t) --www.freecls.com local s = table.concat(t,'.')
table.sort (table [, comp])
陣列排序,comp為可選回撥函式,預設用<比較
例子
local res,t,s local t = {33,1,10,2,22} --{1,2,10,22,33} table.sort(t) --排序複雜資料 t = {} table.insert(t,{s='www',num=22}) table.insert(t,{s='freecls',num=24}) table.insert(t,{s='com',num=10}) function cmp(t1,t2) if t1.num <= t2.num then return true else return false end end --{{s='com',num=10},{s='www',num=22},{s='freecls',num=24}} table.sort(t,cmp)
總結
1.本文只是對table庫做簡單的介紹,如果有疑問可以給我留言
2.lua的版本為5.1,執行環境centos7 64位
3.原文地址http://www.freecls.com/a/2712/10