加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

Lua Table 多字段排序

发布时间:2020-12-14 21:56:08 所属栏目:大数据 来源:网络整理
导读:游戏中有这么个需求,在等级奖励界面,已经领取的奖励往后排,可以领取的奖励往前排。 这个用 Lua Table 的 Sort 函数 多字段排序? 可以实现 如下测试代码 --按照规定顺序排序:可以领

游戏中有这么个需求,在等级奖励界面,已经领取的奖励往后排,可以领取的奖励往前排。

这个用 Lua Table 的 Sort 函数 多字段排序? 可以实现

如下测试代码

--按照规定顺序排序:可以领取、不能领取、已经领取

--status=0 可以领取 1不能领取 2已经领取

local fundRewardTable = {}

table.insert(fundRewardTable,{index=0,itemReward="3001_2|3002_1",propReward="9_10000|12_50",status=2})
table.insert(fundRewardTable,{index=1,{index=2,status=0})
table.insert(fundRewardTable,{index=3,{index=4,{index=5,{index=6,status=1})
table.insert(fundRewardTable,{index=7,{index=8,status=1})

for i,v in ipairs(fundRewardTable) do
	print(v.index,v.status)
end

print("-------------------")


--排序
table.sort( fundRewardTable,function ( a,b )
	-- body
	if a.status==b.status then
		return a.index<b.index
	end

	return a.status < b.status
end )

for i,v.status)
end

代码运行结果

0	2
1	2
2	0
3	2
4	0
5	2
6	1
7	1
8	1
-------------------
2	0
4	0
6	1
7	1
8	1
0	2
1	2
3	2
5	2
[Finished in 0.0s]

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读