lua對table排序,鍵值排序法

2021-09-19 22:04:20 字數 1069 閱讀 2552

skillgroup =

, ["102"] =

,["103"] =

,["104"] =

,}for i in pairs(skillgroup) do

print("直接輸出:"..i)

end-- 直接獲取table的資料進行遍歷發現資料不像list那樣是直接索引取出排序好的,下面進行排序

-- 插入key

local keytest ={}

for i in pairs(skillgroup) do

table.insert(keytest,i)

end-- 對key進行公升序

table.sort(keytest,function(a,b)return (tonumber(a) < tonumber(b)) end)

--對key進行降序

table.sort(keytest,function(a,b)return (tonumber(a) > tonumber(b)) end)

-- 結果資料

local result =

for i,v in pairs(keytest) do

table.insert(result,skillgroup[v])

print("id:"..v.." data:"..skillgroup[v].skillgroupid)

end

列印輸出

直接輸出:103

直接輸出:104

直接輸出:101

直接輸出:102

-- 公升序結果

id:101 data:101

id:102 data:102

id:103 data:103

id:104 data:104

--降序結果

id:104 data:104

id:103 data:103

id:102 data:102

id:101 data:101

Lua中對table排序例項

這篇文章主要介紹了lua中對table排序例項,本文講解了lua中對table的一般排序方法 針對值的排序 同時對鍵值進行排序等方法,需要的朋友可以參考下 lua中利用到的排序的基本上就是建構函式 table 了,為了便於和c區分開來,我俗稱它為表單。例項 原理就是lua整合的冒泡演算法 排序的一般...

lua中對table的排序

lua中對table的排序一般是用lua自帶的table.sort 函式排序,一般不採用自己寫的排序的方式,以下來說一說 table.sort 排序和在工作中遇到的問題 1.排序的方式 table.sort tbl,function a,b return a b end 以上是乙個簡單的例子,得到的...

LUA中table的排序問題

畢業了,正式工作了,隨便寫寫。目前在實習,接觸的是u3d遊戲開發,設計到語言有erlang,c lua。最近在做揹包的排序的時候遇到的乙個小問題就貼出來了。檢視官方文件 第乙個引數是乙個table,第二個引數是外部函式,如下 table.sort showlist,sortfunc local fu...