Lua筆記——2.表Table
阿新 • • 發佈:2018-02-27
添加 C# strip png alt lua index 分隔 字符串數組
#table是Lua語言中的數據結構,用來幫助在Lua中創建不同的數據類型,例如數組、字典、模塊...
數組:
--[[ 使用table創建數組 ]]-- tableArray1 = {} --數組結構的初始化 tableArray1 = {"c","c++","c#","oc","java","kotlin",["s1"]= "python",["s2"]= "lua", ["s3"]= "javascript"} --使用默認索引,以及自定義索引 tableArray1[1] = "php" --使用默認索引對值進行修改 function ipairsPrint(table) print("\nipairs叠代器對索引升序遍歷,索引中斷遍歷停止") for k,v in ipairs(table) do print(k .. "---"..v) end end ipairsPrint(tableArray1) function pairsPrint(table) print("\npairs叠代器遍歷所有元素") for k,v in pairs(table) do print(k.."--"..v) end end pairsPrint(tableArray1)
table數組相關方法
print("table模塊下常用方法:") res1 = table.concat(tableArray1) --字符串數組相連接 res2 = table.concat(tableArray1,">") --給字符串數組元素添加分隔符並返回字符串 res3 = table.concat(tableArray1,">",2,6) --給字符串數組指定元素添加分隔符返回字符串 print("table.concat(tableParam)方法的結果是:",res1) print("table.concat(tableParam,splitMark)的結果是:",res2) print("table.concat(tableParam,splitMark,startIndex,endIndex)的結果是:",res3) res4 = table.insert(tableArray1,"swift") --給數組插入元素,無其他參數直接在末尾插入 res41 = table.concat(tableArray1,">") print("table.insert(tableParam,insertValue)的結果是:",res41) --插入後的並連接字符串之後的結果 print("插入之前tableArray1[3] = ",tableArray1[3]) res5 = table.insert(tableArray1,3,"javascript") --給指定位置添加元素,原位置及其後的元素依次後移 print("插入之後tableArray1[3] = ",tableArray1[3]) res5 = table.insert(tableArray1 ,4,"go") res51 = table.concat(tableArray1,">") print("table.insert(tableParam,insertIndex,insertValue的結果是:)",res51) print("4號位置插入go之後的tableArray為:") ipairsPrint(tableArray1) res6 = table.remove(tableArray1,3) --移除指定位置上的元素後,其後的元素依次向前移動
table其他方法
print("\ntable相關方法\n") function table_max (table) local max for k,v in pairs(table) do if(max == nil) then max = v end if(max < v) then max = v end end print( "the max of the table is :",max) return max end tableArray2 = {5,35,5,2,4,555,4,52,4,eg1 = 123, eg2 = 345 } print("\nUse the table.sort function") table.sort(tableArray2) ipairsPrint(tableArray2) pairsPrint(tableArray2) print("\nGet the max num of a number table") table_max(tableArray2) --[[ 在Lua中使用#tableName所得到的長度只到索引中斷處 ]]-- print(#tableArray2) -- --可以自行書寫一個獲取數組結構表的成員個數 function table_num(t) local num = 0 for k,v in pairs(t) do num = num +1 end return num end print(table_num(tableArray2))
Lua筆記——2.表Table