goProject/trunk/goutil/rank-util
皮蛋13361098506 1b77f62820 初始化项目
2025-01-06 16:01:02 +08:00
..
model.go 初始化项目 2025-01-06 16:01:02 +08:00
rank_test.go 初始化项目 2025-01-06 16:01:02 +08:00
readme.md 初始化项目 2025-01-06 16:01:02 +08:00
util.go 初始化项目 2025-01-06 16:01:02 +08:00

提供游戏内的实时排行榜功能,建议最大长度设定<=200
使用方式:

package main

import (
	rank_util "goutil/rank-util"
)

func main() {
	//  构造对象
	r := rank_util.NewRankUtil(20, compar)

	//  刷新排行榜
	m := &rmodel{k: "byrontest", Fap: 110}
	ifChangeRank, dm := r.Refresh(m.k, m, true)

	//  获取全部排行榜
	tempList := r.GetAll()

	//  删除某个key
	isok := r.Delete("byrontest")
}

// compar
// @description: 判断对象大小,返回含义 -1:a<b 0:a=b 1:a>b
// parameter:
//		@a:对象a
//		@b:对象b
// return:
//		@int:
func compar(a, b interface{}) int {
	af := a.(*rmodel).Fap
	bf := b.(*rmodel).Fap
	if af > bf {
		return 1
	} else if af == bf {
		return 0
	} else {
		return -1
	}
}

type rmodel struct {
	k   string
	Fap int
}